我正在尝试将async/集成await到我们的服务总线中。我SingleThreadSynchronizationContext基于此示例http://blogs.msdn.com/b/pfxteam/archive/2012/01/20/10259049.aspx实现了一个。
它工作正常,除了一件事:TransactionScope. 我等待里面的东西TransactionScope,它打破了TransactionScope.
TransactionScope似乎不适合async/ await,当然是因为它使用 . 将东西存储在线程中ThreadStaticAttribute。我得到这个例外:
“TransactionScope 嵌套不正确。”。
我试图TransactionScope在排队任务之前保存数据并在运行它之前恢复它,但它似乎并没有改变任何事情。而且TransactionScope代码是一团糟,所以很难理解那里发生了什么。
有没有办法让它工作?有什么替代方法TransactionScope吗?