我在我的数据库3个表如何写在LINQ
Group [GroupId, GroupName]
GroupUser [GroupId, AuthorId]
Author [AuthorId, AuthorName]
Book [BookId, AuthorId, BookName]
如何抓住特定GroupId的图书列表?
我已经试过这LINQ声明:
DataLoadOptions dlo = new DataLoadOptions();
dlo.LoadWith<GroupUser>(p => p.User);
dlo.LoadWith<User>(p => p.Books);
context.LoadOptions = dlo;
List<Book> books = context.GroupUser
.Where(p => p.GroupId == groupId)
.Select(p => p.User.Books)
.ToList();
然而,这并不工作,因为编译器会抱怨:
无法隐式转换类型System.Collections.Generic.List [System.Data。 Linq.EntitySet [Book]]到System.Collections.Generic.List [Book]
作为最后的手段,我想也许只是选择GroupUser的列表,然后遍历每个子对象,然后手动将它添加到我的书籍变量中,但对我来说,临时这似乎是LINQ应该做的额外工作。
为了清楚起见 - 您是使用LINQ to SQL还是LINQ to Entities? – 2010-07-23 12:48:00
我正在使用LINQ to SQL – romiem 2010-07-23 12:52:51