嵌套列出了此前面的問題繼:的LINQ查詢EF 4.1數據綁定到WPF形式
WPF需要ObservableCollection
來綁定數據。我知道我可以通過像構造函數使用列表創建ObservableCollection
:
new ObservableCollection(myListName)
但將嵌套組綁定到WPF形式或做我需要我的LINQ查詢的結果碰上一個預先定義的在每個級別鍵入ObservableCollections
?
嵌套列出了此前面的問題繼:的LINQ查詢EF 4.1數據綁定到WPF形式
WPF需要ObservableCollection
來綁定數據。我知道我可以通過像構造函數使用列表創建ObservableCollection
:
new ObservableCollection(myListName)
但將嵌套組綁定到WPF形式或做我需要我的LINQ查詢的結果碰上一個預先定義的在每個級別鍵入ObservableCollections
?
您可以直接使用ObservableCollection<School>
和ObservableCollection<Class>
而不是IList<School>
和IList<Class>
在您的模型類中。通過這種方式,您可以確保實體框架在使用預先加載或延遲加載時將實現爲ObservableCollection<T>
。用IList<T>
EF將創建一個List<T>
作爲具體類型而不是ObservableCollection<T>
。
如果您的導航屬性標記爲virtual
您正在使用延遲加載,這意味着只要您的WPF表單想要訪問屬性,EF就會自動加載集合。
var students = new ObservableCollection<Student>(
context.Students.Include(s => s.Schools.Select(sc => sc.Classes)));
This blog post可能會有所幫助,以及:如果你想一次加載所有集合在一個查詢中可以使用預先加載(上下文不得設置得到這個工作。)
。
關注問題很好,只是不要再次重複整個問題。同時也只是問一個問題。 – Kev