Microsoft today made me happy & sad all at once! Let’s hit the bad news bit first: (rant start) WTF is a Platform Update? The .NET Framework must be the least logically named thing ever! We have had to endure such inconsistencies major releases be a point difference release (.NET 1.0 vs. .NET 1.1 and again with .NET 3.0 vs. .NET 3.5) while other times major releases are major number differences (.NET 2.0 & .NET 4 come to mind), we've had service packs be patch updates until .NET 3.5 SP 1 which included MASSIVE new functionality and had finally .NET 4 dropped the .0 after the 4 (see how many Microsoft staff mess this up still), in contrast to every release before it! There is zero logic or pattern in this naming, which just adds to MASSIVE customer confusion. Today we are introduced to a Platform Update, and not just PU (like Poo or Pooh) but PU1… that implies more is coming… so WTF is it? Rant over, promise.
It is NOT the new name for bug fixes, the PU is in fact the best news for Workflow Foundation people as it includes some seriously powerful new features.
We finally get a complete state machine in WF (dance):
- Entry and exit actions for a state
- Conditional and default transitions that have transition actions
- Scoped variables for a state machine
- Improved tracking support
I know this was available on Codeplex for a while (and there is still other good stuff on there for WF not included in this), but this is just awesome to get it officially as this implies to customers a seriousness & support that having on Codeplex does not.
I would be happy if it was just that but they have ALSO given us the ability to use SQL Azure as a store for WF instances!!
This is HUGE!!
Just imagine storing a workflow in the cloud until you need it later? Ideas for roaming devices, workflows that span across devices and, naturally, better usage of worker instances in the cloud themselves all are opened up by this.
Lastly (and least-ly for me) they add the CompensationExtension class, which is used if you are creating your own host and wish to enable support for compensations in workflows. Not a big deal for me, but this could bring new features into my favourite host AppFabric, but we will need to see if that happens in the future.
The update comes in three parts:
- The runtime update. You need this to do development & you need to install this on machines that make use of the new features. You can get the update at KB2478063.
- The multi-targeting update allows Visual Studio to give you the option for this in VS as a drop down (see below) you can get this from KB2495638.
- The designer update, which does include both of the above and provides all the bits needed to make use of the new features in VS. You can get it from KB2495593
So what you waiting for?! Go and get your workflow on!