views:

239

answers:

1

Hi, I wonder why WCF needs MSDTC configured and started on both client and server, when I use transaction flow. (with network access enabled)

After all, transactions in WCF are managed though SOAP messages using WsAtomicTransaction... So why in the hell the two DTCs need to communicate with each other ?

Thanks for your response.

+1  A: 

Yes, WCF can and will use WS-AtomicTransactions, when appropriate - mostly in interoperability scenarios (with non-.NET clients or services).

But as so many times - interoperability comes at a (performance) price, and if your clients and services are all Windows based, WCF will opt to use OleTransactions (OleTx for simple cases with just one durable store) or MS-DTC (for more advanced scenarios with multiple durable stores involved) - for performance and simplicity reasons.

So WCF doesn't need MS-DTC per se - but WCF (and you!) can benefit from it in Windows-only scenarios.

marc_s
but I don't want that, it complicate greatly the deployment and configuration of the service and my client...
Nicolas Dorier