I’ve worked a lot with WF 3.0 and WF 3.5 in the past, and I almost always ended up with some mixed feelings. On the one hand, WF is an amazing technology which allows you to do some pretty incredible things when you think about it – easily create a Domain-Specific Language (DSL) and allow domain experts to accurately model the business logic as they see fit in a graphic manner, just dragging-and-dropping some cubes around. Along with accompanying abilities to host the WF and allow it to communicate with the outer world it should be a definite winner.
On the other hand, when you start implementing your way around WF 3.5 – that’s exactly when all those annoying little problems start to come to life:
- Want to have a large WF with lots of activities? Better prepare for some sluggish WF designer experience.
- Want to flow a transaction into your WF? You can’t.
- Want to send a One-Way message over a One-Way WCF contract? That’s strange.
- Want to send a message and receive a reply? Prepare for some weird results.
- You get the point…
Examples are easily available, and it was of no surprise to me when I learned that Microsoft are preparing to rewrite the WF engine for .NET 4.0. The promises were loud, and the motivation was clear. However, as I attended this year’s PDC session on WF 4.0, I had this weird feeling of Déjà-Vu. Is history repeating itself? Are we getting the exact same product again? Have the issues been truly fixed? I had this uncomfortable feeling for a couple of weeks, until I finally had a chance to really dive deep into WF 4.0 – and the feeling just went away!
WF 4.0 brings many improvements over WF 3.0/3.5 (including deep WCF integration, enhanced performance and many more), however as far as I am concerned, the main improvement in WF 4.0 is the general feeling when using it – it is just easier and more streamlined to use with a lot less quirks and annoying behaviors. When combined with the hosting and management capabilities of Windows Server AppFabric Beta 1, this is definitely a winning technology.
How do I start with WF 4.0?
In the near future I plan to blog about some of my experiences with WF 4.0, WF services and AppFabric. Till than, I concentrated a list of resources I found useful for getting started with WF 4.0:
- The road from WF 3.0 to WF 4.0
- PDC09 sessions on WF and WF Services
- A tour of all WF 4.0 Beta 1 activities
- WF 4.0 Guidance
- Introduction to AppFabric
- Video – Writing & Hosting WF Services with AppFabric
- WF & WCF 4.0 Beta 2 Samples
Anxious to know more?
Want to learn more on WF 4.0? Wish to see an AppFabric hosting demo live? Find out for yourself how easy it can be! Join Sasha’s and mine session on “Building Workflow Services with WF 4.0 and WCF 4.0” at the Sela Developer Practice (SDP).