static async Task Main()
{
var p = new Program();
p.AddLogging();
await p.CreateTheDatabaseAsync();
await p.AddBookAsync("Professional C# 7", "Wrox Press");
await p.AddBookAsync("Test", "Test");
await p.AddBooksAsync();
await QuerySamples.QueryAllBooksAsync();
await QuerySamples.QueryAllBooksWithAsyncEnumerableAsync();
await QuerySamples.QueryBookByKeyAsync(2);
await p.UpdateBookAsync();
await QuerySamples.QueryBookAsync("Professional C# 7 and .NET Core 2.0");
await QuerySamples.FilterBooksAsync("Pro");
await QuerySamples.UseEFFunctions("C#");
ConflictHandling();
await p.DeleteBookAsync(2);
await p.QueryDeletedBooksAsync();
await QuerySamples.QueryBooksAsync();
QuerySamples.ClientAndServerEvaluation();
await QuerySamples.RawSqlQuery("Wrox Press");
QuerySamples.CompileQuery();
await p.DeleteDatabaseAsync();
}