Condividi tramite


Esempi di Windows Workflow Foundation

Gli esempi in questa sezione ricoprono un'ampia gamma di aree tecnologiche in Windows Workflow Foundation. Gli esempi di tecnologia si concentrano in aree principali di Windows Workflow Foundation, mentre gli esempi di applicazione illustrano una varietà di funzionalità di Windows Workflow Foundation tramite l'utilizzo di applicazioni complete.

Argomenti della sezione

Esempi di applicazioni

Gli esempi di Applicazione rappresentano applicazioni complete scritte per Windows Workflow Foundation che illustrano l'utilizzo di numerose tecnologie.

Esempio Descrizione

Esempio di macchina a stati dell'ordinazione

Viene illustrato come creare un flusso di lavoro della macchina a stati che implementa un sistema di elaborazione di ordini.

Esempio Outlook Workflow Wizard

Viene illustrato come ospitare l'utilità di progettazione Windows Workflow Foundation Visual Studio per creare un'applicazione che genera regole per Microsoft Office Outlook.

Esempio di applicazione di riconoscimento vocale

Viene illustrato come creare un flusso di lavoro della macchina a stati che implementa un'applicazione di menu basata su riconoscimento vocale.

Esempio di servizio di rilevamento di chiusura

Viene illustrato come creare un servizio di rilevamento personalizzato per registrare le chiusure del flusso di lavoro.

Esempio di utilità di progettazione dei profili di rilevamento

Consente di creare visivamente un profilo di rilevamento. Il profilo di rilevamento può essere quindi salvato in un file o in un database in SQL Server.

Esempio di Monitor flusso di lavoro

Viene fornito uno strumento che consente di visualizzare lo stato di avanzamento di un'istanza del flusso di lavoro. Viene utilizzato SqlTrackingService per rilevare lo stato corrente del flusso di lavoro e delle attività e l'utilità di progettazione di flussi di lavoro rieseguibile nell'host per mostrare lo stato di avanzamento.

Esempio di utilità di reflection del flusso di lavoro

Viene fornito uno strumento estensibile per l'estrazione di informazioni relative al flusso di lavoro da un assembly. Ogni gerarchia del flusso di lavoro, le regole dichiarative e i servizi locali richiesti vengono visualizzati in una visualizzazione struttura. Ciò consente un'agevole esplorazione della struttura compilata del flusso di lavoro.

Esempi di tecnologie

Gli esempi di Tecnologia illustrano le tecnologie specifiche di Windows Workflow Foundation. Gli esempi sono suddivisi in categorie in base alle funzionalità della tecnologia.

Categoria Esempio Descrizione

Esempi di attività

Esempio di gestori di eccezioni nidificati

Viene illustrato come utilizzare i gestori di eccezioni nidificati in un flusso di lavoro per intercettare e gestire tipi di eccezione specifici in fasi diverse nel flusso di lavoro.

Esempio di ritardo

Viene illustrato l'utilizzo dell'attività DelayActivity.

Esempio di While Parallel

Viene illustrato l'utilizzo di due attività di codice sequenziale parallele all'interno di un'attività del ciclo while.

Esempio di sospensione e chiusura

Viene illustrato l'utilizzo delle due attività di base, SuspendActivity e TerminateActivity.

Esempio di replicator

Viene illustrato un semplice utilizzo dell'attività ReplicatorActivity.

Esempio di ConditionedActivityGroup

Viene fornita una semplice implementazione di un'attività ConditionedActivityGroup (CAG).

Esempio sincronizzato

Viene illustrato come creare un flusso di lavoro che sincronizza l'accesso alle risorse condivise.

Esempio di generazione

Viene illustrato come utilizzare l'attività di generazione di eccezioni che consente di modellare e generare un'eccezione da un flusso di lavoro. Viene mostrato inoltre come rilevare l'eccezione nell'applicazione host.

Esempio di compensazione

Viene illustrato come creare la compensazione in un flusso di lavoro.

Esempio di semplice criterio

Viene mostrato come creare un flusso di lavoro che utilizza PolicyActivity per implementare un flusso di lavoro di sconto.

Esempio di criterio avanzato

Sulla base dell'esempio Esempio di semplice criterio, vengono illustrate le ulteriori funzionalità avanzate disponibili con un RuleSet.

Esempio di inizializzazione di stato

Viene mostrato come utilizzare un'attività State Initialization.

Esempi di associazione di attività

Esempio di associazione di attività personalizzata

Viene incluso un flusso di lavoro che dispone di una proprietà di attività personalizzata associata a una proprietà del flusso di lavoro.

Esempi di flussi di lavoro di base

Esempio di semplice flusso di lavoro sequenziale

Viene illustrato come compilare ed eseguire un flusso di lavoro "hello world" utilizzando un host della riga di comando.

Esempio di semplice macchina a stati

Viene illustrato l'utilizzo del flusso di lavoro della macchina a stati.

Esempio di flusso di lavoro con parametri

Viene mostrato come compilare un semplice flusso di lavoro sequenziale utilizzando parametri IN e OUT. L'esempio è praticamente identico all'esempio Esempio di semplice flusso di lavoro sequenziale, con l'eccezione che il parametro IN è valutato dalla condizione del codice nell'attività IfElseActivity e lo stato dell'ordine è archiviato in un parametro OUT.

Esempi di comunicazione

Esempio di servizio Web

Viene illustrato il modo in cui i servizi Web possono essere richiamati dal flusso di lavoro e il modo in cui un flusso di lavoro può essere pubblicato come servizio Web.

Esempio di ascolto

Viene introdotta l'attività ListenActivity, un'attività composta che blocca e attende il verificarsi di uno dei rami figlio n. Ogni ramo figlio è una sequenza con un'attività di blocco come primo passaggio. Verrà eseguito esattamente uno dei rami di un'attività ListenActivity.

Esempio di servizio locale correlato

Viene illustrato l'utilizzo di attributi correlativi con i servizi locali per generare eventi correlati a un'istanza del flusso di lavoro.

Esempio di semplice input

Viene illustrato l'utilizzo di code per inviare dati in un flusso di lavoro.

Esempio di comunicazione host

Viene illustrata la comunicazione con l'applicazione host del flusso di lavoro tramite l'utilizzo di un servizio locale.

Esempio di comunicazione della macchina a stati

Viene illustrato come spostarsi tra gli stati tramite l'utilizzo delle attività HandleExternalEventActivity.

Esempi di attività personalizzate

Esempio di semplice attività

Viene illustrato come aggiungere proprietà e gestori a un'attività personalizzata.

Esempio di utilità di progettazione di attività di base

Viene illustrato come aggiungere un errore di configurazione personalizzato e un menu di scelta rapida personalizzato all'utilità di progettazione associata a un'attività.

Esempio di attività di invio di posta elettronica

Viene illustrata la creazione di un'attività personalizzata che può essere utilizzata per inviare posta tramite l'utilizzo di SMTP (Simple Mail Transport Protocol).

Esempio di attività di controllo del file system

Viene illustrata la creazione di un'attività che può essere utilizzata per l'ascolto degli eventi del file system. Viene mostrato l'utilizzo di code nello sviluppo di un'attività per l'ascolto di eventi del file system, ad esempio la creazione di un file in una cartella specifica.

Esempi di hosting dell'utilità di progettazione

Esempio di hosting dell'utilità di progettazione di base

Viene mostrato come è possibile rieseguire nell'host l'utilità di progettazione del flusso di lavoro in un'applicazione Windows. L'obiettivo di questo esempio è mostrare come è possibile creare un ambiente di sviluppo o un ambiente di esecuzione separato esternamente a Visual Studio.

Esempi di aggiornamento dinamico

Esempio di aggiornamento dinamico dal flusso di lavoro

Viene illustrato come aggiornare dinamicamente un'istanza del flusso di lavoro in esecuzione internamente al flusso di lavoro (code-beside).

Esempio di modifica delle regole

Viene illustrato come modificare dinamicamente una condizione della regola dal programma host.

Esempio di aggiornamento dinamico dall'host

Viene illustrato come aggiornare dinamicamente un'istanza del flusso di lavoro in esecuzione esternamente al flusso di lavoro, ad esempio il programma host.

Esempi di hosting

Esempio di servizio di persistenza personalizzato

Viene illustrato il modo in cui il modulo scarica un flusso di lavoro, salvandone lo stato di istanza tramite un servizio di persistenza personalizzato, se il flusso di lavoro è in attesa durante un'attività Delay.

Esempio di generazione di evento per il caricamento del flusso di lavoro

Viene illustrato uno scenario di approvazione del documento nel quale il flusso di lavoro viene scaricato dalla memoria quando è inattivo e ricaricato in memoria al presentarsi di un evento.

Esempio di utilizzo dei servizi di persistenza

Viene illustrato come utilizzare il servizio SqlWorkflowPersistenceService e come vengono caricate e scaricate le istanze del flusso di lavoro dalla memoria dall'applicazione e dal runtime del flusso di lavoro.

Esempio di annullamento di flusso di lavoro

Viene illustrato come uscire da un flusso di lavoro in attesa di un evento esterno che non si verificherà mai.

Esempio di threading del flusso di lavoro

Vengono mostrate le differenze tra l'esecuzione di un flusso di lavoro che prevede l'utilizzo del modello di threading manuale e il modello di threading CLR predefinito e viene illustrato l'impatto del threading durante l'utilizzo dell'attività DelayActivity in un flusso di lavoro.

Esempio di host di persistenza

Viene mostrato come ricaricare un flusso di lavoro persistente utilizzando un Windows Form di esempio.

Esempio InMemory

Esempio semplice in memoria

Viene mostrato come caricare un file di codice del flusso di lavoro in fase di esecuzione.

Esempi di markup

Esempio di flusso di lavoro di markup sequenziale

Viene mostrato come utilizzare un semplice flusso di lavoro sequenziale creato come markup.

Esempio di flusso di lavoro di markup della macchina a stati

Viene mostrato come utilizzare un semplice flusso di lavoro della macchina a stati creato come markup.

Esempio di serializzazione del flusso di lavoro

Viene mostrato come serializzare e ricaricare un flusso di lavoro creato a livello di codice.

Esempio di serializzazione personalizzata

Viene mostrato come serializzare tipi di dati avanzati.

Esempi di ruoli

Esempio di utilizzo dei ruoli Active Directory

Viene illustrato l'utilizzo dei ruoli ActiveDirectory nei flussi di lavoro.

Esempio di utilizzo dei ruoli del flusso di lavoro Web

Viene illustrato l'utilizzo dei ruoli ASP nei flussi di lavoro.

Esempi di regole e condizioni

Esempio di IfElse con regole

Viene mostrato l'utilizzo di una condizione della regola con un'attività IfElseActivity.

Esempi di rilevamento

Esempio di rilevamento semplice

Viene illustrato l'utilizzo del servizio di rilevamento SQL per registrare eventi del flusso di lavoro.

Esempio di esecuzione di query con l'utilizzo di SQLTrackingService

Viene illustrato l'utilizzo del servizio di rilevamento SQL per registrare eventi del flusso di lavoro tramite l'utilizzo di un profilo di rilevamento personalizzato.

Esempio di rilevamento tramite track point utente

Viene illustrato l'utilizzo del servizio di rilevamento SQL per registrare eventi del flusso di lavoro tramite l'utilizzo di track point dell'utente.

Esempio di rilevamento di EventArgs

Viene illustrato l'utilizzo del servizio di rilevamento SQL per registrare TrackingWorkflowTerminatedEventArgs, TrackingWorkflowSuspendedEventArgs e TrackingWorkflowExceptionEventArgs del flusso di lavoro

Esempio di ConsoleTrackingService

Viene mostrato come creare un servizio di rilevamento e scrivere il contenuto dei dati registrati nella console.

Esempio di RuleActionTrackingEvent

Viene illustrato come è possibile utilizzare il rilevamento per determinare azioni della regola nel flusso di lavoro.

Esempio di servizio di rilevamento file e query

Viene illustrato come è possibile creare un semplice servizio di rilevamento basato su file che legge e scrive i dati TrackingProfile in un file XML.

Esempio di utilizzo del modello a oggetti del profilo di rilevamento

Viene mostrato come creare, serializzare e deserializzare dati TrackingProfile tramite l'utilizzo del modello a oggetti del profilo di rilevamento.

Esempio di manutenzione di dati SQL

Viene mostrato come suddividere i dati di rilevamento per un'agevole archiviazione dei dati.

Esempi del servizio WorkflowCommitWorkBatch

Esempio di utilizzo del servizio WorkflowCommitWorkBatch

Viene illustrato come creare un servizio personalizzato e renderlo partecipe alla stessa transazione così come accade per quello del flusso di lavoro da cui è richiamato il servizio.

Footer image

Copyright © 2007 Microsoft Corporation. Tutti i diritti riservati.