【问题标题】:LINQ to SQL - Using TransactionScope for SELECT statement - is call to Complete() necessary?LINQ to SQL - 对 SELECT 语句使用 TransactionScope - 是否需要调用 Complete()?
【发布时间】:2013-04-24 18:18:08
【问题描述】:

我正在使用 LINQ to SQL 类来定义查询,然后调用执行查询的 ToList() 方法。 ToList() 调用包含在“使用 TransactionScope”块中以实现“NOLOCK”提示。该查询是只读的,因此我不确定在这种情况下是否需要调用 TransactionScope.Complete()。这是我遵循的示例,它没有进行此调用:Getting LINQ to SQL and Entities to use NOLOCK

【问题讨论】:

    标签: sql linq transactionscope


    【解决方案1】:

    我认为没有。 C# 中的 Complete() 与 SQL 中调用 Commit 相同,但由于这是一条选择语句,因此无需提交任何内容。由 TransactionScope 产生的任何其他剩余构造将在 using { } 块的末尾处理,因此我认为 Complete() 在您的情况下是不必要的。

    【讨论】:

    • 这就是我正在寻找的确认信息。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-12
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多