Mike Taulty's Blog
Bits and Bytes from Microsoft UK
ASP.NET, WF and sending data backwards and forwards
Mike Taulty's Blog

Mike's Badges

Follow on Twitter
View mike's profile on slideshare
Add to Technorati Favorites
CW Blog Awards

I saw some questions on an internal alias about "how to get ASP.NET to talk to Workflows" in terms of sending data backwards and forwards and I thought I'd write up a little bit about that here as I gave a talk at the DevelopMentor Connected Systems Roadshow (a short write up of which is here) last month that tried to cover off a few things about this.

In the talk I partitioned ASP.NET up into two different areas - web services and web pages although you could also talk about other things like handlers and modules but the ideas are pretty much the same.

The walk through of the talk went something like this (the slides and all the code from the talk are available on that link with the slides being in PDF format if I remember rightly);

  1. "Explain" Workflow
    1. What are the pieces that we provide in the Framework
    2. What's an Activity? What Activities do we ship?
    3. How (at a high level) would I build an Activity and its "family" of components
    4. How do I put a Workflow together (i.e. VS, Designer, XAML, Code, Custom)
    5. How do I "package" a Workflow definition (i.e. Assembly, XAML, Custom)
    6. Where does the runtime come in?
    7. How does the runtime interact with scheduling, persistence, tracking to run Workflow instances?
    8. Host/Workflow Local Communication Service mechanism.
  2. Show a little scenario of someone publishing a book and someone else having to approve it (picture over on the right hand side).

    1. Firstly, show this with web services in ASP.NET using the in-built web service support that Workflow has for ASMX. Show the automatic publishing and then use Reflector in order to unpick how this works and the details about "the Cookie".
    2. Secondly, show this with web services in ASP.NET using the Host/Workflow Local Communication Service mechanism. This is more work than (1) but it shows how we have the flexibility to move away from the automatic ASMX support to a more generic means that can then be plugged in to ASMX web services.
    3. Thirdly, show this with web pages in ASP.NET using the exact same mechanism as in (2) which is the reason for showing (1), (2) in that order.

 

 

In terms of 2.1 and 2.2 I wrote a little bit about this here previously and the slides/demo that I showed at the DevelopMentor day were really just a way of making this more amenable to being delivered in a session in front of people.

When it comes to 2.3, there's "nothing much left to know" because it's just the same mechanism as that used in 2.2 which is the beauty of the mechanism in the sense that the Workflow isn't bound to how the data reaches it.


Posted Wed, Dec 20 2006 12:34 AM by mtaulty

Comments

Christopher Steen wrote Link Listing - December 22, 2006
on Fri, Dec 22 2006 8:50 PM
WPF/E Pad [Via: dwahlin ] Recipe: Deploying a SQL Database to a Remote Hosting Environment (Part 1)...
Sam Gentile wrote New and Notable 132
on Sun, Dec 24 2006 8:47 AM
A special Christmas Eve version to clean out my Feed Demon box as I will be on vacation next week and
(C) Mike Taulty, 2009. All rights reserved. The information in this weblog is provided "AS IS" with no warranties, and confers no rights. This weblog does not represent the thoughts, intentions, plans or strategies of my employer. It is solely my opinion. Inappropriate comments will be deleted at the authors discretion. All code samples are provided "AS IS" without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems