2015-05-06 20 views
3

我正在处理一个遗留项目,几乎不存在事务,这导致在发生错误时发生大量部分提交。 SQL调用是原始ADO,Linq到Entities和EntityFramework的混合,我想让这些事务在事务中运行。TransactionScope警卫检查

要解决这个问题,我正在查看TransactionScope路由。任何人都可以告诉我,如果可以在某个方法中执行某种警戒检查以确定它是否从TransactionScope中运行?对TransactionScope对象本身使用属性或某种检查。最终目标是抛出某种有意义的异常并追踪缺少交易的区域。

感谢

回答

0

如果你的代码是一个TransactionScope块内运行,则Transaction.Current != null。您需要为System.Transactions和对System.Transactions.dll的引用添加使用。

+0

希望避免额外的参考,但这对我有用:) –