[英]How do I select multiple grandchildren in linq?
我想做類似下面的事情,但是我無法弄清楚選擇孫子句的Select行的正確語法。
EventDates是Event模型上的集合。
反過來,EventDate具有1-1 EventDateVenue和EventDateDelegates的集合。
var dataModel = DataContext.Events
.Include(i => i.EventDates
.Select(d => d.EventDateDelegates, d.EventDateVenue)
)
.FirstOrDefault(i => i.ID == eventID);
我想從主dataModel訪問全部屬性和對象。
因此,能夠環游它的孩子,然后反過來就是孫子。
例如:
var eventTitle = dataModel.Title
var eventID = dataModel.ID
foreach(EventDate eventDate in dataModel.EventDates)
{
var venueTitle = eventDate.EventVenue.Title;
var delegates = eventDate.EventDateDelegates;
foreach (delegate in delegates)
{
// do something
}
}
對於將來來這里的任何人,這是我的做法:
EventPageDataModel dataModel = DataContext.Events
.Include(i => i.Categories)
.Include(i => i.Dates)
.Include(i => i.Dates.Select(d => d.EventDateDelegates))
.Include(i => i.Dates.Select(d => d.EventDateDelegates.Select(edd => edd.User)))
.Include(i => i.Dates.Select(d => d.Venue))
.FirstOrDefault(i => i.URL == url);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.