2010-01-26 50 views
4

我想知道为什么WCF需要在客户端和服务器上配置并启动MSDTC,当我使用事务流时。 (启用网络访问)为什么WCF需要DTC处理事务流?

毕竟,WCF中的事务通过SOAP消息使用WsAtomicTransaction进行管理...... 那么,为什么在地狱里两个DTC需要互相沟通?

感谢您的回复。

回答

3

是的,WCF可以并将在适当时使用WS-AtomicTransactions - 主要用于互操作性场景(使用非.NET客户端或服务)。 WCF会选择使用OleTransactions(OleTx适用于只有一个持久存储的简单情况)或者MS- DTC(针对涉及多个耐用商店的更高级方案) - 出于性能和简单的原因。

所以WCF不需要需要 MS-DTC本身 - 但是WCF(和你!)可以从仅用于Windows的场景中受益。

+1

但我不想那么做,它会使服务和我的客户端的部署和配置变得非常复杂... – 2010-01-27 07:00:08