Panoramica sul flusso di lavoro di WindowsWindows Workflow Overview

Un flusso di lavoro è un set di unità elementari chiamate attività che vengono archiviati come un modello che descrive un processo reale.A workflow is a set of elemental units called activities that are stored as a model that describes a real-world process. I flussi di lavoro forniscono un metodo per descrivere l'ordine di esecuzione e le relazioni dipendenti tra porzioni di lavoro di breve o lunga durata.Workflows provide a way of describing the order of execution and dependent relationships between pieces of short- or long-running work. Questo lavoro passa attraverso il modello dall'inizio alla fine e le attività possono essere eseguite da persone o da funzioni del sistema.This work passes through the model from start to finish, and activities might be executed by people or by system functions.

Motore di runtime del flusso di lavoroWorkflow Run-time Engine

Ogni istanza del flusso di lavoro in esecuzione viene creata e gestita da un motore di runtime in-process con il quale il processo host interagisce tramite uno degli elementi seguenti:Every running workflow instance is created and maintained by an in-process run-time engine that the host process interacts with through one of the following:

Ognuna di queste classi esegue il wrapping del runtime di attività principale rappresentato come oggetto ActivityInstance responsabile dell'esecuzione di attività.Each of these classes wraps the core activity runtime represented as a ActivityInstance responsible for activity execution. In un dominio dell'applicazione possono essere in esecuzione contemporaneamente diversi oggetti ActivityInstance.There can be several ActivityInstance objects within an application domain running concurrently.

Ognuno dei tre precedenti oggetti di interazione host viene creato da un albero delle attività definito programma di flusso di lavoro.Each of the preceding three host interaction objects is created from a tree of activities referred to as a workflow program. Usando questi tipi o un host personalizzato che esegue il wrapping ActivityInstance, i flussi di lavoro possono essere eseguiti all'interno di qualsiasi processo di Windows, incluse applicazioni console, applicazioni basate su form, servizi di Windows, ASP.NETASP.NET siti Web e Windows Communication Foundation ( Servizi WCF).Using these types or a custom host that wraps ActivityInstance, workflows can be executed inside any Windows process including console applications, forms-based applications, Windows Services, ASP.NETASP.NET Web sites, and Windows Communication Foundation (WCF) services.

Componenti del flusso di lavoro nel processo hostWorkflow components in the host process
Componenti del flusso di lavoro nel processo hostWorkflow components in the host process

Interazione tra componenti del flusso di lavoroInteraction between Workflow Components

Nel diagramma seguente viene illustrata la modalità di interazione tra i componenti del flusso di lavoro.The following diagram demonstrates how workflow components interact with one another.

Interazione del flusso di lavoroWorkflow interaction

Nel diagramma precedente, il metodo Invoke della classe WorkflowInvoker viene usato per richiamare più istanze del flusso di lavoro.In the preceding diagram, the Invoke method of the WorkflowInvoker class is used to invoke several workflow instances. WorkflowInvoker viene usata per flussi di lavoro semplici che non richiedono la gestione da parte dell'host. Tali flussi di lavoro (ad esempio la ripresa di Bookmark) devono essere eseguiti usando invece il metodo Run.WorkflowInvoker is used for lightweight workflows that do not need management from the host; workflows that need management from the host (such as Bookmark resumption) must be executed using Run instead. Non è necessario attendere il completamento di un'istanza del flusso di lavoro prima di richiamare un altro; il motore di runtime supporta l'esecuzione simultanea di più istanze del flusso di lavoro.It isn’t required to wait for one workflow instance to complete before invoking another; the runtime engine supports running multiple workflow instances simultaneously. Di seguito sono riportati i flussi di lavoro richiamati:The workflows invoked are as follows:

Vedere ancheSee Also

BizTalk Server 2006 o WF? Scegliere lo strumento corretto flusso di lavoro per il progettoBizTalk Server 2006 or WF? Choosing the Right Workflow Tool for Your Project