退出我的实体框架ObjectContext之一的分布式事务
本文关键字:分布式 事务 ObjectContext 我的 实体 框架 退出 | 更新日期: 2023-09-27 18:27:50
我正在将NServiceBus与分布式事务一起使用。通常情况下,这非常有效。我的消息要么成功,要么失败。要么全有要么全无。
然而,我也在尝试将诊断数据记录到我的数据库中。这是在单独的ObjectContext上完成的。为此,无论分布式事务的成功与否,我都希望它保存到数据库中。
有没有一种方法可以让一个(也是唯一一个)数据上下文连接到分布式事务之外的数据库?(并将其余部分保留在?)
尝试此方法来抑制环境分布式事务以进行审计:
using (new TransactionScope(TransactionScopeOption.Suppress))
{
// Create logging context and audit your data
}
一个选项(如果使用3.0)是创建UoW:
http://andreasohlund.net/2011/11/21/unit-of-work-in-nservicebus-3-0/
在那里抑制事务并进行日志记录。
NSB有一种内置的审计方法。我建议打开它,并在另一个端点中处理日志记录/审计跟踪。