Condividi tramite


Novità di Windows Workflow Foundation

Windows Workflow Foundation (WF) in .NET Framework 4 modifica diversi paradigmi di sviluppo delle versioni precedenti. I flussi di lavoro sono ora più facili da creare, eseguire e gestire e implementare una serie di nuove funzionalità. Per ulteriori informazioni sulla migrazione delle applicazioni di flusso di lavoro .NET Framework 3.0 e .NET Framework 3.5 all'uso della versione più recente, vedere Migration Guidance.

Modello di attività del flusso di lavoro

L'attività è ora l'unità di base della creazione di un flusso di lavoro, anziché l'uso delle classi SequentialWorkflowActivity o StateMachineWorkflowActivity. La classe Activity fornisce l'astrazione di base del comportamento del flusso di lavoro. Gli autori di attività possono quindi implementare CodeActivity per la funzionalità di attività personalizzata di base o NativeActivity per le funzionalità di attività personalizzate che usano l'ampiezza del runtime. Activity è una classe utilizzata dagli autori di attività per esprimere nuovi comportamenti in modo dichiarativo in termini di altri oggetti NativeActivity, CodeActivity, AsyncCodeActivityo DynamicActivity, sia sviluppati che inclusi nella libreria di attività Built-In.

Opzioni di attività composite avanzate

Flowchart è una nuova potente attività del flusso di controllo che consente agli autori di modellare cicli arbitrari e rami condizionali. Flowchart fornisce un modello di programmazione basato su eventi che in precedenza era in grado di essere implementato solo con StateMachineWorkflowActivity. I flussi di lavoro procedurali traggono vantaggio dalle nuove attività di controllo del flusso che modellano strutture tradizionali di controllo del flusso, ad esempio TryCatch e Switch<T>.

Libreria di attività Built-In espansa

Le nuove funzionalità della libreria di attività includono:

Modello esplicito dei dati dell'attività

.NET Framework 4 include nuove opzioni per l'archiviazione o lo spostamento dei dati. I dati possono essere archiviati in un'attività usando Variable. Quando si spostano dati dentro e fuori da un'attività, vengono usati tipi di argomento specializzati per determinare la direzione in cui vengono spostati i dati. Questi tipi sono InArgument, InOutArgumente OutArgument. Per altre informazioni, vedere il modello di dati di Windows Workflow Foundation.

Opzioni avanzate di hosting, persistenza e rilevamento

.NET Framework 4 contiene miglioramenti della persistenza, ad esempio i seguenti:

  • Sono disponibili altre opzioni per l'esecuzione dei flussi di lavoro, tra cui WorkflowServiceHost, WorkflowApplicatione WorkflowInvoker.

  • I dati sullo stato del flusso di lavoro possono essere resi persistenti in modo esplicito usando l'attività Persist.

  • Un host può rendere persistente un ActivityInstance senza scaricarlo.

  • Un flusso di lavoro può specificare zone non persistenti durante l'utilizzo di dati che non possono essere mantenuti, in modo che la persistenza venga posticipata fino all'uscita dalla zona senza persistenza.

  • Le transazioni possono essere propagate in un flusso di lavoro usando TransactionScope.

  • Il rilevamento è più semplice usando TrackingParticipant.

  • Il tracciamento nel registro eventi di sistema è fornito usando EtwTrackingParticipant.

  • La ripresa di un flusso di lavoro in sospeso viene ora gestita usando un oggetto Bookmark.

Facilità di estensione dell'esperienza di progettazione WF

La nuova finestra di progettazione di WF si basa su Windows Presentation Foundation (WPF) e offre un modello più semplice da usare quando si esegue il rehosting di WF Designer all'esterno di Visual Studio e fornisce anche meccanismi più semplici per la creazione di ActivityDesigner personalizzati. Per altre informazioni, vedere Personalizzazione dell'esperienza di progettazione del flusso di lavoro.