web 304 an overview of asp.net and windows workflow foundation kashif alam program manager developer...

23

Upload: alexina-king

Post on 30-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation
Page 2: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

WEB 304WEB 304An Overview of ASP.NET and An Overview of ASP.NET and Windows Workflow FoundationWindows Workflow Foundation

WEB 304WEB 304An Overview of ASP.NET and An Overview of ASP.NET and Windows Workflow FoundationWindows Workflow Foundation

Kashif AlamKashif AlamProgram ManagerProgram ManagerDeveloper DivisionDeveloper DivisionMicrosoft CorporationMicrosoft Corporation

Page 3: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

AgendaAgendaWeb Workflow OverviewWeb Workflow Overview

Demo: Hello World UI FlowDemo: Hello World UI Flow

UI WorkflowUI WorkflowDemo: Modeling UI WorkFlow in Visual StudioDemo: Modeling UI WorkFlow in Visual Studio

PageFlow / UI Flow in ASP.NETPageFlow / UI Flow in ASP.NETDemo: PageFlow Development ExperienceDemo: PageFlow Development Experience

Extensibility ModelExtensibility Model

Summary & QuestionsSummary & Questions

Page 4: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

What You asked for …What You asked for …

Can I do MVC in ASP.NET?Can I do MVC in ASP.NET?

Will UIP become part of the supported Will UIP become part of the supported Product?Product?

Can the Wizard control navigate between Can the Wizard control navigate between pages?pages?

Can ASP.NET Navigation be abstracted and Can ASP.NET Navigation be abstracted and controlled by a set of rules? controlled by a set of rules?

Can I build modular UI and navigate Can I build modular UI and navigate through it in different paths?through it in different paths?

When will ASP.NET support this When will ASP.NET support this functionality?functionality?

Page 5: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Vision for the SolutionVision for the Solution

A powerful, easy to use, extensible A powerful, easy to use, extensible framework for building integrated UI framework for building integrated UI WorkFlow in ASP.NET applicationsWorkFlow in ASP.NET applications

DeliverablesDeliverablesSimple declarative model for creating and Simple declarative model for creating and consuming workflows from ASP.NETconsuming workflows from ASP.NET

Powerful programming model for full control Powerful programming model for full control and extensibilityand extensibility Integrated Visual Studio designer supportIntegrated Visual Studio designer support

Highly scalable and componentized solutionHighly scalable and componentized solution

Page 6: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Hello World UI FlowHello World UI Flow

Page 7: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Request Process Model Request Process Model

WF UI WF UI WorkFlowWorkFlowInstanceInstance

WF WF Runtime Runtime

IIS IIS

WindowsWindows

ASP.NET ASP.NET PageFlow PageFlow

ASP.NET ASP.NET PageFlow PageFlow

ASP.NET ASP.NET PageFlow PageFlow

HHoossttLLaayyeerr

Page 8: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Workflow Foundation: UI Workflow Foundation: UI WorkflowWorkflow

ModelingModelingVisualize and model navigation as a processVisualize and model navigation as a process

Ability to use WF as business logic layer for the Ability to use WF as business logic layer for the pagepage

Common events to interact with WorkFlow Common events to interact with WorkFlow runtimeruntime

Runtime Runtime State: Utilize workflow state in web applicationsState: Utilize workflow state in web applications

Hosting: Runs in partial trustHosting: Runs in partial trust

Scalability: Ability to run WorkFlow delays in the Scalability: Ability to run WorkFlow delays in the backgroundbackground

Page 9: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

UI WorkFlow Components UI WorkFlow Components UINavigatorUINavigator

Ability to model a free formed WorkFlowAbility to model a free formed WorkFlowContains steps that require user interactionContains steps that require user interaction

Activity ModelActivity ModelProvides out-of-the-box activities, such as Page Provides out-of-the-box activities, such as Page Activity, for building UI WorkflowActivity, for building UI WorkflowAbility to define rule sets in the designer for Ability to define rule sets in the designer for transitionstransitionsProvides a framework to build custom activitiesProvides a framework to build custom activities

WorkFlow RuntimeWorkFlow RuntimeHosting environment for executing workflowsHosting environment for executing workflows

WorkFlow ServicesWorkFlow ServicesScheduling, Tracking, Persistence and Scheduling, Tracking, Persistence and TransactionTransactionProvider based model to configure PersistenceProvider based model to configure Persistence

Page 10: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Modeling UI WorkFlow in Visual StudioModeling UI WorkFlow in Visual Studio

Page 11: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

ASP.NET – WorkFlow IntegrationASP.NET – WorkFlow Integration

Page DevelopmentLeverage server-side control and event based model

Controls for communicating with the WorkFlow hosting layer

2-way declarative data-binding to WorkFlow

Ability to map interactive activities to Pages / Views

RuntimeExecute workflow in ASP.NET app domain

Provider based extensibility model

Scalable model to allow running multiple workflows in same page

Page 12: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

ASP.NET – WorkFlow TypesASP.NET – WorkFlow Types

PageFlowPageFlowMultiple pages – each page maps to an activity in WF

User entry points are enforced based on the WF Activity

Ability to book mark an instanceIf user restarts the browser session, it will go to the right steps in the workflow where the user left off.

UIFlowUIFlowA Page can have multiple UI Flows running at the same time

Single page – multiple views, user navigates views

Page 13: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

ASP.NET PageFlow ComponentsASP.NET PageFlow Components

PageFlowManager ControlPageFlowManager ControlController logicController logic

Provide a mapping to the WF typeProvide a mapping to the WF type

Enforce association of a Page to Activity nameEnforce association of a Page to Activity name

Page Activity MappingPage Activity MappingDefine the mapping of an Page Activity to a Define the mapping of an Page Activity to a pagepage

Workflow ManagerWorkflow ManagerAllow host to stop, resume, pause, start a Allow host to stop, resume, pause, start a workflow instanceworkflow instance

Listen for events from the workflow Listen for events from the workflow

Notify controls when WF activity changesNotify controls when WF activity changes

Page 14: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

ASP.NET UIFlow ComponentsASP.NET UIFlow Components

UIFlowContainer ControlUIFlowContainer ControlProvide a mapping to a workflow typeProvide a mapping to a workflow type

StartTemplate, CompleteTemplate StartTemplate, CompleteTemplate

Container for UIFlowView controlContainer for UIFlowView control

Provides the DataBinding contextProvides the DataBinding context

UIFlowView ControlUIFlowView ControlProvide a mapping to a Page ActivityProvide a mapping to a Page Activity

Contains HTML, ASP.NET Controls and literal Contains HTML, ASP.NET Controls and literal texttext

Ability to DataBind to Workflow PropertiesAbility to DataBind to Workflow Properties

Validation (UI + business)Validation (UI + business)

Page 15: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

PageFlow Development ExperiencePageFlow Development Experience

Page 16: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Step by Step PageFlowStep by Step PageFlow

Model a UI WorkflowModel a UI WorkflowDefine activities and transition rulesDefine activities and transition rules

Define data associated with the activitiesDefine data associated with the activities

Build corresponding ASP.NET pagesBuild corresponding ASP.NET pagesReference the UI WorkFlowReference the UI WorkFlow

Include PageFlow controls on the pagesInclude PageFlow controls on the pages

Define relevant data-binding to get/set dataDefine relevant data-binding to get/set data

Define activity mappingDefine activity mapping

F5 and testF5 and test

Page 17: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Choosing the Right SolutionChoosing the Right Solution

TaskTask <asp:wizard<asp:wizard…>…>

PageFloPageFloww

UIFloUIFloww

Single pageSingle page xx xx

Multiple pagesMultiple pages xx

State when close State when close browser browser

xx xx

Integrate with Integrate with Enterprise WorkflowEnterprise Workflow

xx xx

Client supportClient support xx xx

Built-in navigation UIBuilt-in navigation UI xx

Extensibility to other Extensibility to other controllerscontrollers

xx xx

Page 18: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Extensibility ModelExtensibility Model

Navigation Engine is ConfigurableNavigation Engine is ConfigurableFollows provider based modelFollows provider based model

Windows Workflow Foundation is the default Windows Workflow Foundation is the default

Can build state-less / state-based Can build state-less / state-based navigationnavigation

Ability to bring existing navigation Ability to bring existing navigation solutions forwardsolutions forward<system.web><system.web>

<workflowManager defaultProvider=“…"><workflowManager defaultProvider=“…"> <providers><providers> <add name=“…" type=“…" /><add name=“…" type=“…" /> </providers></providers> </workflowManager> </workflowManager> </system.web>

Page 19: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

SummarySummary

We hear YOUWe hear YOU

We have a VisionWe have a Vision

We are working on a solution We are working on a solution

We need your feedbackWe need your feedback

Page 20: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

Call To ActionCall To Action

TodayTodayStart working with Start working with Workflow Foundation Beta2.2 Workflow Foundation Beta2.2 Attend Attend CONTLC302 – UI Page Flow by hosting Win WF in ASP.NET

Later this yearLater this yearStart working with the ASP.NET PageFlow CTPStart working with the ASP.NET PageFlow CTP

Be ready to deploy with OrcasBe ready to deploy with Orcas

We want your feedbackWe want your [email protected]@microsoft.com

Page 21: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation
Page 22: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

ResourcesResourcesTechnical Chats and Webcastshttp://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/usa/webcasts/default.asp

Microsoft Learning and Certificationhttp://www.microsoft.com/learning/default.mspx

Virtual Labshttp://www.microsoft.com/technet/traincert/virtuallab/rms.mspx

ASP.NET Community Sitehttp://www.ASP.NET/

ASP.NET forumshttp://forums.ASP.NET/

Technical Community Siteshttp://www.microsoft.com/communities/default.mspx

Page 23: WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.

MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.