【发布时间】:2014-01-05 15:16:57
【问题描述】:
我们有一个全局的DataManager,它持有和管理一个DbContext。
我们将名为File 的表的所有对象绑定到树视图。
return this.ArchiveContext.File.Where(f => f.parent_id == null).ToList<File>();
使用数据绑定更新新项目,这很棒。
不幸的是,像name 这样的属性没有。
我们认为最好每 x 秒更新一次。
我们还发现,除非重新创建上下文,否则不会更新任何属性。
这显然是错误的做法。
使用DbContext 时的最佳做法是什么?
【问题讨论】:
-
您如何尝试更新属性?你是在 XAML 上绑定的吗?
-
最佳实践是在您的数据访问层深处根据需要构建和处置
DbContext。 -
@KeithPayne 调用
SaveChanges不会在改变模型时保存任何更改。我该如何解决这个问题? -
@KeithPayne 这取决于软件的设计。如果满足存储静态 dbContext 的要求,那应该不是问题。
-
@NSAddict 这是因为您不再有代理类,因此 DbContext 不会跟踪您的对象。
标签: c# .net wpf entity-framework