1
With EF 6,我是這樣查詢的,它工作的很好。EF Core包含多個級別的問題
IQueryable<Student> query = _testHelper.buildQuerty(id, userId)
.Include(x => x.Class)
.Include(x => x.Subjects)
.Include(x => x.Subjects.Select(y => y.Category));
問題: 同樣不EF核2.0工作。
錯誤
System.ArgumentException發生的HResult = 80070057消息=該 屬性表達 '受試者=> {從受試者的Y受試者選擇 [Y] .Category}' 是無效的。表達式應代表屬性 訪問:'t => t.MyProperty'。有關包含 相關數據的更多信息,請參見http://go.microsoft.com/fwlink/?LinkID=746393。
打開鏈接,並重構像這樣,但它仍然不工作,並給出相同的錯誤。
List<Student> query = _testHelper.buildQuerty(id, userId)
.Include(x => x.Class)
.Include(x => x.Subjects)
.ThenInclude(Subjects => Subjects.Select(y => y.Category)).tolist();
問題在哪裏?
謝謝,我知道這種方式,但懶得測試。你知道奇怪的事情是,當你在主題後面寫點時,類別不會顯示出來,而是顯示所有與收藏相關的東西。這就是爲什麼我以其他方式工作的方式。無論如何,謝謝。 – simbada
@simbada我在做'ThenInclude'的同時,也在Visual Studio上嘗試了錯誤的intellisense行爲。 –
這是因爲兩個重載都是表達式,而智能感知不知道選擇哪一個,並始終選擇實體上的集合(以前選擇的導航屬性) – Tseng