diff --git a/BenchmarkService.cs b/BenchmarkService.cs index d0a958d..8cb66c8 100644 --- a/BenchmarkService.cs +++ b/BenchmarkService.cs @@ -88,8 +88,26 @@ public List GetAuthors() [Benchmark] public List GetAuthors_Optimized() { - List authors = new List(); - + using var dbContext = new AppDbContext(); + var authors = dbContext.Authors + .AsNoTracking() + .Where(x => x.Country == "Serbia" && x.Age == 27) + .OrderByDescending(x => x.BooksCount) + .Select(x => new AuthorDTO + { + UserFirstName = x.User.FirstName, + UserLastName = x.User.LastName, + UserName = x.User.UserName, + UserEmail = x.User.Email, + AuthorAge = x.Age, + AuthorCountry = x.Country, + AllBooks = x.Books.Where(b => b.Published.Year < 1900).Select(y => new BookDto + { + Name = y.Name, + PublishedYear = y.Published.Year + }).ToList(), + }).Take(2).ToList(); + return authors; } }