ฉันกำลังพยายามรวม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หรือไม่?
SingleThreadSynchronizationContext TransactionScope