如何在应用程序的不同运行实例中更新全局DataContext对象?

时间:2010-11-17 11:01:33

标签: c# linq linq-to-sql

我在整个应用程序中使用单个全局DataContext对象。应用程序应该在网络环境中工作,其中多个实例与共享SQL数据库同时工作。

在我调用DataContext.Refresh方法之前,一个应用程序中的数据库更改不会反映在其他实例中。问题是这个功能很耗时,我无法将代码更改回使用不同的datacontext对象进行不同的操作。

如何始终保持每个应用程序中的datacontext对象更新?

1 个答案:

答案 0 :(得分:0)

RefreshMode Enum是正确的位。只需确定何时使用它,并正确使用DataContext。将DataContext视为一个工作单元,并在准备提交时标记刷新模式(如KeepChanges或其他东西)。通过这种方式,用户信息被推送(或冲突起泡),并使用数据库中最新鲜的东西自动更新。

我认为其他人都正确地指出了全球数据文字的错误。如果要更频繁地更新其显示,则必须设置刷新时间或为用户提供刷新按钮。我不知道那里有另一种方式。