Category Archives: WCF

VSLive! 2009 San Francisco slides and samples

Thank you for all who attended my sessions in San Francisco. Below are the slides and samples for my sessions.


VTH4 – Understanding Transactions in WCF Slides (561.73 KB) | Samples (540.1 KB)


VTH16 – Supporting POX/REST with WCF Slides (369.58 KB) | Samples (302.82 KB)


VTH25 – Simplify WebPart (and Control) Development with WebPart Skinning Slides (359.85 KB) | Samples (447.66 KB)


The VTH25 samples include the full installer. However, be sure to change the uploadskinfeature.bat to point to the correct server. You can read more about the VirtualPathProvider I mentioned in VTH25 session here.

Speaking at VSLive San Francisco, February 23-27

The wonderful folks at VSLive! have invited me again to do three sessions at their San Francisco event from February 23 to February 27, 2009. These are the sessions I’ll do (all on Thursday 26):



  • Understanding Transactions in WCF

  • Supporting POX/REST with WCF

  • Simplify WebPart (and Control) Development with WepPart Skinning

The first two are obviously about WCF. The last talk is primarily about SharePoint, but the discussed techniques will work with ASP.NET WebParts and WebControls as well.


I really like VSLive! because they have some great content and top tier speakers. The speakers (myself included of course) are also very accessible, because the event is not as huge as some of the other conferences these days. So if you intend to go to a conference this year, VSLive! is going to be worth your money.

WCF Transactions: Lightweight or DTC?

Have you ever wondered if/when a transaction in WCF upgrades to the DTC? There two simple ways to check this:



  1. Open Performance Monitor and add a new counter. Get the counter Active Transactions from the Distributed Transaction Coordinator section.

  2. Open Component Services and go to My Computer in COM+. There is a folder for Distributed Transaction Coordinator, through which you can view the DTC statistics.

In both cases, you’ll see the active transactions jump from 0 to 1 when a transaction upgrades to DTC. This happens when you cross a service boundary. If you just use a transaction within the service, WCF will stick to the Lightweight Transaction Manager as long as you stay within you AppDomain or access a single database (SQL Server 2005 and up).

VSLive Dallas Demo’s

For those of you that attended my sessions in Dallas, here are the demo’s for



If you attended the latter, you’ll remember that I wrecked my prepared demo (note to self: never change configs just before a session). I finally figured out what was wrong. I changed some configuration on the server side and I thought I did the same on the client. Apparently I did not, because when I updated the service reference on the client it worked.