Linq 在另一个列表中选择列表

Linq 在另一个列表中选择列表,linq,linq-to-sql,Linq,Linq To Sql,写第二个列表的正确语法是什么?bookid和其他字段无法识别 var bookssublist = from bookdetails in bookslist join bookcategories in _context.BookCategories on bookdetails.BookId equals bookcategories.BookId

写第二个列表的正确语法是什么?bookid和其他字段无法识别

 var bookssublist = from bookdetails in bookslist 
                           join bookcategories in _context.BookCategories
                           on bookdetails.BookId equals bookcategories.BookId
                           where bookcategories.CategoryId==CategoryId     
                           select new BookBasicInfo {
                              count = bookcount,
                              BookInfo = new List<BookInfo>()
                               {                                       
                                   BookId = bookdetails.BookId,
                                   BookTitle = bookdetails.Title,
                                   Images = bookdetails.ThumbnailImagePath,
                                   PublishDate = bookdetails.PublishedDate,
                                   AuthorList = bookdetails.BookAuthors.Select(q => q.Author.Author1).ToList(),
                                   CategoryList =bookdetails.BookCategories.Select(q=>q.Category.CategoryName).ToList(),

                               }
                           };       
var booksublist=来自bookslist中的bookdetails
在_context.bookcategories中联接bookcategories
在bookdetails.BookId上等于bookcategories.BookId
其中bookcategories.CategoryId==CategoryId
选择new BookBasicInfo{
计数=账面计数,
BookInfo=新列表()
{                                       
BookId=bookdetails.BookId,
BookTitle=bookdetails.Title,
Images=bookdetails.ThumbnailImagePath,
PublishDate=bookdetails.PublishDate,
AuthorList=bookdetails.BookAuthors.Select(q=>q.Author.Author1.ToList(),
CategoryList=bookdetails.BookCategories.Select(q=>q.Category.CategoryName).ToList(),
}
};       

您以错误的方式使用了集合初始值设定项。实际上,您忘记将类型为
BookInfo
的对象传递给初始值设定项

BookInfo = new List<BookInfo>()
{
   new BookInfo()
   {
         BookId = bookdetails.BookId,
         BookTitle = bookdetails.Title,
         Images = bookdetails.ThumbnailImagePath,
         PublishDate = bookdetails.PublishedDate,
         AuthorList = bookdetails.BookAuthors.Select(q => q.Author.Author1).ToList(),
         CategoryList =bookdetails.BookCategories.Select(q=>q.Category.CategoryName).ToList()
   }
}
BookInfo=新列表()
{
newbookinfo()
{
BookId=bookdetails.BookId,
BookTitle=bookdetails.Title,
Images=bookdetails.ThumbnailImagePath,
PublishDate=bookdetails.PublishDate,
AuthorList=bookdetails.BookAuthors.Select(q=>q.Author.Author1.ToList(),
CategoryList=bookdetails.BookCategories.Select(q=>q.Category.CategoryName).ToList()
}
}

hmmm也许你应该朝
GroupBy
的方向看。。