2012-01-25 62 views
0

所以我有一個頭表,Client,每個客戶都有一些客戶。EntityFramework和MVVM是否可以按需使用TreeView加載節點?

我正在使用實體框架來查詢數據。

當TreeView顯示時,它只會顯示客戶端,然後直到用戶展開客戶端節點,它將查詢其客戶。

是否有可能在MVVM + Linq中做到這一點?

我可以做一些動態的,比如點擊第一節點和火災事件查詢,動態添加樹項目等

上,但我想知道這是有可能做到這一點的更簡單的方法? 像利用Linq的延遲加載,數據綁定等?可能嗎?

回答

0

它是絕對可能的,但是你怎麼做取決於你項目特有的很多不同因素。

我會做的是創建一個自定義TreeViewItem類,它的實體(可能通過構造函數),然後當它Items財產被調用時,它可以打電話給你的實體的Clients導航屬性。如果您正確配置了延遲加載,那麼實際的數據庫查詢就會在這裏發生。

如果您有10個節點,並且用戶只展開節點2,那麼只有該節點的查詢會觸發。

相關問題