我很好奇组件的实际位置,它们负责使用oracle和SQl服务器在C#应用程序中跨越分布式事务。WCF分布式事务中的基础结构组件是什么?
具体地说,我期待知道究竟这些组件(例如,它是一个CLR DLL,窗口服务,Oracle客户端DLL等):
- Microsoft分布式事务处理协调器(MSDTC)
- 资源经理
- 或其他任何东西,我错过
PS:我们是想跨Oracle和SQLServer数据库来实现分布式事务,并希望确保ŧ他的先决条件在那里。例如,如果它是一个Windows服务,那么它正在运行?
我很好奇组件的实际位置,它们负责使用oracle和SQl服务器在C#应用程序中跨越分布式事务。WCF分布式事务中的基础结构组件是什么?
具体地说,我期待知道究竟这些组件(例如,它是一个CLR DLL,窗口服务,Oracle客户端DLL等):
PS:我们是想跨Oracle和SQLServer数据库来实现分布式事务,并希望确保ŧ他的先决条件在那里。例如,如果它是一个Windows服务,那么它正在运行?
我不知道实际位置,但是如果您的机器能够运行WCF,那么您拥有使用分布式事务所需的一切。
就Windows服务而言,我的理解是MSDTC和OracleMTSRecoveryService需要启动。
http://weblogs.asp.net/ricardoperes/archive/2009/04/07/using-transactionscope-with-odp-net.aspx
在.NET分布式事务(企业服务和TransactionScope
)和WCF都依赖于MSDTC。 WCF也可以使用WS-AtomicTransaction,但也由MSDTC处理。