我试图将async
/await
集成到我们的服务总线中。 我实施了一个SingleThreadSynchronizationContext
基于此示例http://blogs.msdn.com/b/pfxteam/archive/2012/01/20/10259049.aspx。获取TransactionScope以使用异步/等待
它工作正常,除了一件事:TransactionScope
。我正在等待TransactionScope
内部的内容,并打破TransactionScope
。
TransactionScope
似乎并不发挥好与async
/await
,肯定是因为它存储在使用ThreadStaticAttribute
线程的东西。我得到这个例外:
“TransactionScope嵌套不正确。”。
我试图在排队任务之前保存TransactionScope
数据,并在运行之前将其恢复,但似乎并未改变任何事情。并且TransactionScope
代码是一团糟,所以很难理解那里正在发生的事情。
有没有办法让它工作?是否有一些替代TransactionScope
?
这是一个非常简单的代码来重现一个TransactionScope错误http://pastebin.com/Eh1dxG4a除了这里的异常事务中止 – Yann
你能NIT只是使用普通的SQL事务?或者你跨越多个资源? –
我跨越多个资源 – Yann