workflow services integration of wcf and wf
Download
Skip this Video
Download Presentation
Workflow Services Integration of WCF and WF

Loading in 2 Seconds...

play fullscreen
1 / 34

Workflow Services Integration of WCF and WF - PowerPoint PPT Presentation


  • 178 Views
  • Uploaded on

Workflow Services Integration of WCF and WF. PhaniKumar M T Technical Architect | BrainScale Consulting [email protected] Session Objectives and Takeaways. Why Workflow Services? Architectural overview of Workflow Services Features Context Exchange Durable Services

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Workflow Services Integration of WCF and WF' - ona


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
workflow services integration of wcf and wf

Workflow ServicesIntegration of WCF and WF

PhaniKumar M T

Technical Architect | BrainScale Consulting

[email protected]

session objectives and takeaways
Session Objectives and Takeaways
  • Why Workflow Services?
  • Architectural overview of Workflow Services
  • Features
    • Context Exchange
    • Durable Services
    • Duplex Workflow Services
    • Conversations
agenda
Agenda
  • A Typical Application Architecture
  • Architecture of WF Services
  • Features
    • Context Exchange
    • Durable Services
    • Duplex Workflow Services
    • Conversations
  • Prerequisites:
    • Basic Understanding of WF and WCF
windows workflow foundation
Windows Workflow Foundation

What is Workflow?

Visual Studio Designer

A Workflow

Workflow is the organization of work

Activity

Activity Library

What’s the value of Workflow?

Long Running Logic

Workflow Runtime Engine

Flexibility

Runtime Services

Transparency

Host Process

workflow services advantages
Workflow ServicesAdvantages
  • Service implemented as Workflow
    • Leverage Workflow development experience
    • Enforces application protocol by default
    • Allows long-running, durable Services
  • Workflow hosted as Service
    • ServiceContract provides typed interface for integrating with the Workflow
    • Messages enforce by-value, serializable data
    • Workflows can be message-activated
bindings
Bindings
  • NetTcpContextBinding
  • WSHttpContextBinding
  • BasicHttpContextBinding
  • <Your Binding Here>
    • Create a custom binding and insert the ContextChannel into the Channel Stack
custom context binding
Custom Context Binding

<customBinding>

<binding name="namedPipeWithContext">

<context />

<binaryMessageEncoding />

<namedPipeTransport />

</binding>

</customBinding>

session objectives and takeaways12
Session Objectives and Takeaways
  • Why Workflow Services?
  • Architectural overview of Workflow Services
  • Features
    • Context Exchange
    • Durable Services
    • Duplex Messaging
    • Conversations
context exchange architecture
Context Exchange Architecture
  • ContextChannelimplemention
  • Receive
    • Extract context to ContextMessageProperty
    • Apply context on response to activating request
  • Send
    • Add context to all outgoing messages
  • Representation of context
    • SOAP header <wsc:Context />
    • HTTP cookie
    • In code:

IDictionary<XmlQualifiedName, string>

WorkflowOperationInvoker

Service Runtime

DurableInstanceProvider

MessageContextInspector

OperationInvoker

OperationSelector

ContextChannel

ListenerChannel

InstanceProvider

MessageInspector

setting outgoing context
Setting Outgoing Context
  • // inside wf code application
  • IDictionary<XmlQualifiedName, string> context;
  • // context = … obtain context from store
  • sendActivity.Context = context;
  • //also, to dynamically set send address
  • sendActivity.CustomAddress =
  • “net.tcp://140.141.2.5/service.svc”;
non wf client access to context
Non WF Client Access to Context
  • // my wpf application
  • IDictionary<XmlQualifiedName, string> context;
  • // context = … obtain context from store
  • IContextManager cm =
  • proxy.InnerChannel.GetProperty<IContextManager>();
  • if (null != cm)
  • cm.SetContext(context);
  • // need to use a channel stack which includes the
  • // context channel, or write the headers directly into
  • // the message (non-WCF) client
session objectives and takeaways18
Session Objectives and Takeaways
  • Why Workflow Services?
  • Architectural overview of Workflow Services
  • Features
    • Context Exchange
    • Durable Services
    • Duplex Messaging
    • Conversations
durable services
Durable Services

Architecture

Persistence Provider

Service.cs

Service Instance

Service Runtime

App.config

ServiceHost

DurableInstanceProvider

Operation 1

OperationInvoker

MessageContextInspector

Operation 2

OperationSelector

InstanceProvider

ContextChannel

ListenerChannel

MessageInspector

DurableServiceBehavior

ServiceDescription

DurableOperationBehavior

ServiceBehavior

OperationBehavior

session objectives and takeaways21
Session Objectives and Takeaways
  • Why Workflow Services?
  • Architectural overview of Workflow Services
  • Features
    • Context Exchange
    • Durable Services
    • Duplex Messaging
    • Conversations
session objectives and takeaways24
Session Objectives and Takeaways
  • Why Workflow Services?
  • Architectural overview of Workflow Services
  • Features
    • Context Exchange
    • Durable Services
    • Duplex Messaging
    • Conversations
conversations
Conversations
  • Multiple messages arriving for the same operation
  • Receives operating in parallel
  • Scenarios
    • Bidding
    • Coordinating approvals
summary
Summary
  • WF and WCF developers benefit from these two worlds coming together
  • Workflow Services provide a natural way to model services
  • With an understanding of context, advanced communication patterns can be implemented across many parties.
feedback qna
Feedback / QnA
  • Your Feedback is Important!

Please take a few moments to fill out our online feedback.

For detailed feedback, use the form at http://www.connectwithlife.co.in/vtd/helpdesk.aspx

Or email us at [email protected]

  • Use the Question Manager on LiveMeeting to ask your questions now!
contact
Contact
  • You can visit us at:

www.brainscale.com

  • Email Address

[email protected]

ad