TransactionScope抛出异常

eer*_*rzz 5 c# linq transactionscope

我确定这是一个非常基本的问题,但我无法在谷歌找到任何解决方案.

当我试图使用该代码块时,它会抛出一个异常,即'System.Activities.Statements.TransactionScope':在using语句中使用的类型必须可以隐式转换为'System.IDisposable'

using (TransactionScope trans = new TransactionScope()) { }

简单地说,我想在Linq代码中使用TransactionScope.

感谢和问候

Ale*_*x J 8

您可能使用了错误的TransactionScope.

您正在寻找的是System.Transactions.TransactionScope,它驻留在System.Transactions.dll程序集中.确保它被引用(默认情况下不是),并且你是" using System.Transactions".


jas*_*son 6

我不知道System.Activities.Statements.TransactionScope你想要的是什么System.Transactions.TransactionScope.你还需要一个参考System.Transactions.dll.

从文档:

public sealed class TransactionScope : IDisposable
Run Code Online (Sandbox Code Playgroud)

请注意,System.Activities.Statements.TransactionScope生活中System.Activities.Statements描述为

System.Activities.Statements命名空间包含可用于创建工作流活动.此命名空间包含用于流控制,与集合和变量交互,异常,补偿,事务以及与传统工作流交互的活动.

这显然不合适.