2
如果我有一個像這樣的LINQ表達式來拉取用戶表和相關數據。該查詢給了我像預期的那樣人口稠密的對象圖:爲什麼EF在執行「from」時會丟失包含數據
var query = from u in Context.Users
.Include("EventRegistrations")
.Include("State")
select u;
不過,如果我添加其他相關的導航屬性爲「從」,即使我沒有用它做任何事情,我只得到單我的結果中沒有包含數據的對象數據。
var query = from u in Context.Users
.Include("EventRegistrations")
.Include("State")
from ur in u.UserRoles
select u;
這是爲什麼?我想在where子句中的上述表達式中使用「ur」,但它消除了我獲取包含的表數據的能力。
正如感興趣,你也可以使用拉姆達點包括語法,所以它是編譯時安全,即'.INCLUDE(U =>ü。狀態)''你還需要'使用System.Data.Entity;'語句 –
爲什麼你在u.UserRoles中添加'from'?你不需要在where子句中使用'UserRoles'。 – LukLed
http://stackoverflow.com/questions/416847/join-and-include-in-entity-framework。我同意@ LukLed。我建議顯示你想要執行的完整查詢,可能有另一種解決方案,不需要第二個「from」。 – Slauma