1
我寫一個EF庫和我的一個功能,您可以通過一個謂詞來找到特定的對象,同時指定包括如何指定強類型的導航屬性包括
IQueryable<T> FindBy(Expression<Func<T, bool>> predicate,
params Expression<Func<T, object>>[] includes)
這個偉大的工程,但是的一個包括我想指定的是導航屬性的導航屬性。
我的電話目前看起來像這樣,如果指定爲字符串,那麼這將是"Folders.Devices"
。
var folder = _Folders.FindBy(f => f.FolderId == id, f => f.Devices).FirstOrDefault();
如果我來指定字符串這個額外的導航屬性將是
"Folders.Devices.Nodes"
我的問題是我怎麼包括每個Device
的內碼Devices
的Nodes
財產?
謝謝,不太正確,但指出我在正確的方向。我不得不使用'f => f.Devices.Select(d => d.Nodes)' – Chris
@Chris不是你的'Nodes'集合嗎?如果是的話,你的查詢將返回一個集合的集合?我不認爲這就是你想要的,我只是認爲你想要一個集合作爲第二個參數傳入。 –
這是,但是當我嘗試你的代碼時,它拋出了一個異常,並告訴我使用'Select'後,它的工作! – Chris