Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static string GetBooksByCategory(BookShopContext db, string input)
- {
- StringBuilder sb = new StringBuilder();
- List<string> inputCategories = input.Split(" ", StringSplitOptions.RemoveEmptyEntries).Select(c => c.ToLower()).ToList();
- List<int> categoryIds = new List<int>();
- List<string> books = new List<string>();
- foreach (var category in inputCategories)
- {
- var categoryId = db.Categories.Where(c => c.Name == category)
- .Select(c => c.CategoryId);
- categoryIds.AddRange(categoryId);
- }
- foreach (var id in categoryIds)
- {
- var book = db.Books
- .Where(b => b.BookCategories.Any(bc => bc.CategoryId == id))
- .OrderBy(b => b.Title)
- .Select(b => b.Title)
- .ToList();
- books.AddRange(book);
- }
- foreach (var title in books)
- {
- sb.AppendLine($"{title}");
- }
- return sb.ToString().Trim();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement