C#TransactionManager

时间:2011-04-21 12:46:49

标签: c# .net sqltransaction transactionmanager

您好我有一个生成器为我构建了一些自动化代码(创建所有get,set等),在这段代码中有一段代码如下:

SqlTransaction transaction = TransactionManager.GetTransaction();

我已手动添加引用并在文件开头导入using System.Transactions;,因为代码生成器从未执行此操作。导入后,我删除了TransactionManager error,但现在我收到的.GetTransaction();错误来自我所研究的TransactionManager中没有这样的方法。
有没有人知道应该代替什么代码(生成器有一些代码必须由于错误而被替换,我猜这是其中一种情况......)。任何建议,将不胜感激!提前谢谢!

3 个答案:

答案 0 :(得分:2)

这个答案假定您使用的生成器是内置的,您现在正在修改它 - 如果它是外部代码生成器,那么您应该查看手册以了解您需要的参考资料。

System.Transactions中的TransactionManager类实际上并不为您创建或登记交易。它只是提供有关当前事务的信息。来自MSDN:

  

此类包含静态属性   以及用于获取信息的方法   关于默认交易选项。

相反,我认为你想要:

谷歌搜索TransactionManager似乎人们通常使用这个名称编写自己的类,这些类似于提供GetTransaction()方法 - 这可能就是生成器有这个名字的原因吗?

答案 1 :(得分:0)

只添加一些Transaction命名空间应该没有帮助。您可能需要生成器附带的一些基本DLL或代码文件。阅读手册。

答案 2 :(得分:0)

您通常通过在当前连接上调用BeginTransaction()来启动SqlTransaction。看起来您的“生成器”使用它生成的一些TransactionManager类或随其一起提供。

相关问题