2014-01-05 72 views
0

我們擁有一個全局的DataManager,它擁有並管理一個單一的DbContextDbContext不更新對象的屬性

我們將名爲File的表中的所有對象都綁定到樹視圖。

return this.ArchiveContext.File.Where(f => f.parent_id == null).ToList<File>(); 

新項目得到與數據綁定更新,這是很好的。
不幸的是,像name這樣的屬性沒有。

我們認爲最好每隔x秒更新一次。
我們還發現,除非上下文被重新創建,否則任何屬性都不會更新。

這顯然是錯誤的方法。

使用DbContext時的最佳做法是什麼?

+0

你如何更新屬性?你在XAML上綁定了嗎? – kkocabiyik

+1

最佳做法是根據需要在數據訪問層的深處構建並處理'DbContext'。 –

+0

@kkocabiyik是的。 – NSAddict

回答

0

這是因爲當您使用從靜態dbcontext返回的ToList()時,您正在使用完全不同的對象數組。假設你顯示List中的對象數組或類似List的東西。您可以使用新分配的對象設置DataSource屬性,並且它將刷新所有列表。

listBox1.DataSource = null; 
listBox1.DataSource = NewList;