Condividi tramite


Panoramica sul flusso di lavoro di Windows

Le informazioni contenute in questo argomento sono valide per Windows Workflow Foundation 4.

Un flusso di lavoro è un set di unità elementari chiamate attività che sono archiviate come un modello che descrive un processo reale. 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. Questo lavoro passa attraverso il modello dall'inizio alla fine e le attività possono essere eseguite da persone o da funzioni del sistema.

Motore di runtime del flusso di lavoro

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:

  • Un oggetto WorkflowInvoker, che richiama il flusso di lavoro come metodo.

  • Un oggetto WorkflowApplication per il controllo esplicito sull'esecuzione di una singola istanza del flusso di lavoro.

  • Un oggetto WorkflowServiceHost per le interazioni basate su messaggi in scenari con più istanze.

Ognuna di queste classi esegue il wrapping del runtime di attività principale rappresentato come oggetto ActivityInstance responsabile dell'esecuzione di attività. In un dominio dell'applicazione possono essere in esecuzione contemporaneamente diversi oggetti ActivityInstance.

Ognuno dei tre precedenti oggetti di interazione host viene creato da una struttura ad albero delle attività definita programma di flusso di lavoro. Utilizzando questi tipi o un host personalizzato che esegue il wrapping dell'oggetto ActivityInstance, i flussi di lavoro possono essere eseguiti all'interno di un qualsiasi processo di Windows, incluse applicazioni console, applicazioni basate su form, servizi per Windows, siti Web ASP.NET e servizi per Windows Communication Foundation (WCF).

Dd489465.44c79d1d-178b-4487-87ed-3e33015a3842(it-it,VS.100).gif

Interazione tra componenti del flusso di lavoro

Nel diagramma seguente viene illustrata la modalità di interazione tra i componenti del flusso di lavoro.

Interazione del flusso di lavoro

Nel diagramma precedente il metodo Invoke della classe WorkflowInvoker viene utilizzato per richiamare diverse istanze del flusso di lavoro. La classe WorkflowInvoker viene utilizzata per flussi di lavoro semplici che non richiedono la gestione da parte dell'host. Tali flussi di lavoro (ad esempio la ripresa Bookmark) devono essere eseguiti utilizzando invece il metodo Run. 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. Di seguito sono riportati i flussi di lavoro richiamati:

Vedere anche

Altre risorse

BizTalk Server 2006 or WF? Choosing the Right Workflow Tool for Your Project