【问题标题】:Keeping a "reference" to a row object for a long time长时间保持对行对象的“引用”
【发布时间】:2008-10-29 11:58:07
【问题描述】:

在我的应用程序中,我保留从数据库中获取的 LINQ 对象,并定期修改它,然后是 db.SubmitChanges()

我读到你不应该长时间围绕DataContext 对象。 但是如果我在修改之间关闭我的DataContext,我猜数据对象会失去它与实际数据库行的链接。

保持 DataContext 打开的最佳选择是什么?每次我想更新它时,我真的必须重新加载它吗?

【问题讨论】:

    标签: .net linq linq-to-sql .net-3.5


    【解决方案1】:

    否则,您可以对数据库执行直接 SQL 查询,以尽可能快地进行更新。

    由于并发问题,由于过度比较,默认 Linq UPDATE 语句不是最佳的。查看 SQL 分析器或使用 Linq SQL 可视化器。

    //安迪

    【讨论】:

      【解决方案2】:

      在您想要更新该行时重新加载该行应该不会对性能造成太大影响,并且它将保证您正在更新该行的最新版本(以防其他用户/进程在您首次打开后对其进行了修改)它)。

      如果您不知道其他任何东西会更新该行,那么您可以保留 DataContext 而不会出现太大问题(除非失去与数据库的连接)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-02-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-16
        • 2011-02-03
        • 2017-02-23
        • 2016-03-24
        相关资源
        最近更新 更多