MSDTC and Windows Server 2003 Service Pack 1 Release Candidate

The Windows Server 2003 Service Pack 1 Release Candidate is available for download at The MSDTC changes are similar to the ones described at In addition we have a new interface called IDtcNetworkAccessConfig2 that allows the management of the new configuration settings: inbound/outbound network access and the authentication level. If you have questions…


Don’s Wiki Page about Transactions

Don Box has a section dedicated to Transactions on his wiki page at


An Introduction to the Web Services Architecture and Its Specifications

Felipe Cabrera, Chris Kurt and Don Box have an update to the white paper on Web Services Architecture at There are two paragraphs that talk about transactions in the web services world: “Designated Coordinators” and “Long Duration Activities”.


XA Transactions in Windows XP SP2

Service Pack 2 adds to Windows XP the same level of security as in Windows Server 2003 for XA transactions (transactions that are used with XA-compliant resource managers like Oracle, IBM DB/2 etc). See my previous post at for the more details on how to enable XA transactions after installing XP SP2. If you…


Don Box about System.Transactions

This is about an old article posted in MSDN Magazine but I want to make sure you didn’t miss the paragraphs about System.Transactions that Don put together in “A Guide to Developing and Running Connected Systems with Indigo“:     “Indigo also provides significant support for transactional programming. Indigo-enabled versions of Windows support a service-based…


Propagating MSDTC transactions

MSDTC offers two types of propagation for transactions: Export/Import (the most known one) and Transmitter/Receiver. The semantic difference between the two is that the Export/Import is a “push” model (the transaction is “pushed” to the remote machine at the moment when Export is called), while Transmitter/Receiver is a “pull” model (the transaction is “pulled” from…


ADO.NET/System.Data blog

Today, in most of the cases, transactions (distributed or not) are used in combination with ADO.NET (System.Data). Angel Saenz-Badillos talks about ADO.NET and Whidbey in his blog at Consequently he talks about our System.Transactions as well, so make sure to take a look there too. Of course, my dream and my team’s dream is…


Using distributed transactions in .Net 1.x without deriving from ServicedComponent

The most used feature of System.EnterpriseServices or COM+ is the distributed transaction support. And the automatic transaction programming model in ES using attributes ([Transaction] and [AutoComplete]) is great and nice but (it is always a but!)… you need to inherit from ServicedComponent and the Transaction attribute is only available at class level, and you need…


Transactions made easy: System.Transactions

Currently in .Net Framework (v1.0 and v1.1) the support for transactions is offered by System.EnterpriseServices and by the System.Data.IDbTransaction, implemented by one of your favorite data provider (see for more details). Both models have some disadvantages (the first is forcing the inheritance from ServicedComponent and the later offers support only for “local” transactions in…


On the Road to Indigo

Richard Turner takes us on the road to Indigo: You’ll find there Q&A about Indigo, guidelines on writing your apps today to be prepared for an easy migration to Indigo tomorrow and a lot more.