by Matt Milner
30. October 2006 02:59
My favorite fix is that the per instance pipeline configuration works as advertised/expected. This was something a client of mine really needed as we had a pipeline template that we used with many different customers. However, we had different configuration for each customer. Essentially, we had file naming standards and different encryption key identifiers that we needed to configured. Without this fix, we would have had to use a different pipeline definition for each port. With the fix, we just updated our binding files to include the configuration of the pipeline components and we could reuse the same template over and over again. Awesome, and of course, included in the 2006 version.
by Matt Milner
25. October 2006 05:46
You might file this under the "it has always been this way and I'm late in figuring it out" category, but I just found the three letter snippet shortcut for Workflow dependency properties and events. I didn't see this in earlier builds and was getting tired of CTRL+K -> CTRL+X then drilling into the menus to get to Worfklow Dependency property. Especially since the EventHandler snippet always came first and the way they are worded I had to either move to the cursor keys or type 25+ characters to get it to move down to the property item.
Now I just WDP + Tab + Tab and I'm happily editing a workflow dependency property.
Or, I can WDE + Tab + Tab and edit my dependency property for an event handler.
Awesome!
by Matt Milner
24. October 2006 04:58
Kevin Lam has put together a great set of posts describing the direct binding options in BizTalk Server when using messaging shapes in Orchestration. This is one of those powerful features of BizTalk that gets underutilized because people don't understand it, or even know about it. It is also one of the areas where people get into real trouble because you need to understand it well in order to use it without getting yourself into trouble.
by Matt Milner
24. October 2006 04:47
I found this posting the other day and was surprised to find some things in here that I didn't realize had changed. Not that I should be surprised, it's hard to keep up with a big product like BizTalk. :)
Interesting points include a new registry entry that allows you to invoke statics without having to assert the class into the runtime; support for generics; and allowing object traversal. Unfortunately, the latter item is only available in code, which is a huge bummer since I find this to be one of the most frustrating things with the BRE composer.
There are several other interesting tidbits so be sure to check it out if you do anything with the BRE in BizTalk.
by Matt Milner
17. October 2006 10:17
Next month Pluralsight has our first public offering of
Introducing Windows Workflow Foundation right in my own town of Minneapolis. We did a Double Feature with WF and WCF back in August and it was great. If you are looking for some training on WF, check out the information page and register now "Space is limited" as they say.
We'll have great hands on labs mixed in with lecture to give you the right balance of concepts with experience. Hope to see you there.
Minneapolis not convenient for you? Leave a comment as to where you would like to see us do public Workflow courses. Boston? Dallas? Seattle? Denver? Atlanta? Vegas? :) If we get enough interest for a location, we'll get a course up and running and I'll be sure to announce it here.
by Matt Milner
11. October 2006 16:11
I've seen several requests for tracking the current state in a state machine workflow. There are several options including adding custom activities, using call external method, or using the WorkflowIdled event and the StateMachineWorkflowInstance to do this. They all have their drawbacks however.
- Custom Activities - in order to use this, you either have to subclass the state activity or write a simple activity and remember to add it to every state. HUGE headache to manage and maintain in either case and the custom state comes with its own set of problems.
- using CallExternalMethod has the same issues as the custom activity. Who wants to add an activity all the time just to track data.
- Using the idled event can work, but then you have to use the StateMachineWorkflowInstance class and this may entail calling up your workflow from persistence just to query information from it.
The ideal solution would give you the current state when it is entered and allow you to get that information without having to do anything specific in your workflow in order to track it. I've created a sample that uses a custom tracking service to track the state changes in a state machine workflow.
The tracking service is pretty simple, defining a single activity tracking location to track the executing state of the StateActivity. The tracking channel just writes out the state name to the console. In your use, you can customize the tracking channel to do whatever makes sense in your application (write to DB, raise an event, etc.).
Find the sample
here and leave any feedback as comments.
by Matt Milner
11. October 2006 10:57
So, I haven't blogged in MONTHS, and here's why.
-
writing Pluralsight's
workflow course. We had a double feature in August which was a lot of fun. This format makes for some long days, and people were pretty fried by the end of it, but it was great teaching with Aaron and the WCF / WF content works really well together.
-
Getting ready for my new Son's arrival. Jake was born on 9/16/2006 and I have been trying to keep my head above water for the last couple of weeks. I have been spending a ton of time with my older son and getting to go to school and music class with him. The time has been great, but now it is time to get back to work, which should prove interesting.
-
Doing some work for Microsoft on content/demos/etc. around WF, WCF, and CardSpace. This has been an ongoing thing that I have been working on for the last year and has proven to be a lot of fun. I got the chance to travel all over the world and meet some great folks doing the training.
I'm getting ready to blog again and post some samples, etc. in the coming months, so for those of you still "listening", there will be something to read. :)