Linq To SQL缓存VS多用户应用程序
时间:2020-03-06 14:44:08 来源:igfitidea点击:
我们开发了Win32应用程序,该应用程序通过Linq to SQL访问SQL 2005数据库。问题是当2个用户访问同一记录(查看和编辑)用户1更新记录(DataContext.SubmitChanges())时,用户2将继续看到旧信息,直到他重新启动应用程序。因此,我们想更新用户2的上下文。现在出现的解决方案是调用DataContext.Refresh以将对象与SQL表同步我们想知道是否存在其他解决方案?
谢谢
解决方案
我注意到,根据我们已从实体获取的数据,刷新可能真的很讨厌,另一种解决方案是将我们正在使用的上下文重置为新实例。
context = new MyDataContext(ConnectionString);
至少在我使用它的情况下,这样做的开销更少,数据库调用更少。