我想加入兩個模型,然後從連接表中選擇值。我實現的目標遠遠超出了我對SO中不同解決方案的理解和收集信息。但是在x中,我總是從第一個上下文context.EventSessionTeamModels
獲取值,但是第二個值沒有任何值。但是Select
塊中的所有內容都需要從第二個context.SessionModels
中提取。也許我以一種錯誤的方式加入了他們。我需要知道需要做什麼。讓我知道是否需要代碼的其他部分以外的代碼。使用實體框架在asp.net mvc5中加入多個表格
IQueryable<SessionShortModel> shortInfoSession = context.EventSessionTeamModels
.Join(context.SessionModels, x => x.session_id, y => y.session_id, (x, y) => x)
.Where(x => x.event_id == eid && x.bp_id == attendeeId && x.role_code == "ATD")
.Select(x => new SessionShortModel {
StartTime = x.start_date,
EndTime = x.end_date,
Day = DbFunctions.TruncateTime(x.start_date),
Year = x.start_date.Year,
Month = x.start_date.Month,
Name = x.session_name
});
我同意導航屬性比連接更合適,但是'Include'在這裏沒有任何效果,因爲查詢以投影結束。 –
EventSessionTeamModels必須具有屬性IEnumerabe sessionsModels = get; set;和映射關係[info](http://www.entityframeworktutorial.net/code-first/configure-one-to-many-relationship-in-code-first.aspx) –
J4ime