Condividi tramite


Esempio di aggiornamento dinamico dal flusso di lavoro

Download sample

In questo esempio viene illustrato come aggiornare dinamicamente un'istanza del flusso di lavoro in esecuzione all'interno del flusso di lavoro (code-beside).

Il flusso di lavoro riceve una richiesta di ordine di acquisto di un determinato importo. Il flusso di lavoro approva automaticamente l'ordine di acquisto se l'importo è inferiore a $1000. Se l'importo è superiore a $1000, è necessaria un'approvazione dell'ordine di acquisto. Ciò si ottiene aggiungendo dinamicamente un'attività InvokeWorkflowActivity dal flusso di lavoro nel suo code-beside. La richiamata di un altro flusso di lavoro consente di incapsulare la logica di richiesta dell'approvazione in un flusso di lavoro. La logica di approvazione, tuttavia, può essere eseguita anche in linea.

Quando si compila e si esegue l'esempio, l'output apparirà simile agli elementi seguenti:

Output dell'esempio di aggiornamento dinamico

Configurazioni del database

I servizi SQL Server installati da Windows Workflow Foundation utilizzano Microsoft SQL Server per archiviare le informazioni. Per queste attività è possibile utilizzare Microsoft SQL Server 2005 Express, SQL Server 2000 o versioni più recenti o SQL Server 2000 Desktop Engine (MSDE).

Il programma di installazione di Windows Workflow Foundation non installa i database richiesti da questi servizi; tuttavia, il programma di installazione installa gli script SQL per la creazione e la configurazione dei database per tali servizi.

I passaggi riportati di seguito descrivono come creare e configurare i database utilizzati dai servizi in questo esempio.

Per creare e configurare il database SQL Server

  • Se si utilizza Microsoft SQL Server 2005 Express, SQL Server 2000 o versioni più recenti, o SQL Server 2000 Desktop Engine (MSDE), creare un nuovo database denominato SqlPersistenceService utilizzando l'istruzione della query SQL:

    CREATE DATABASE SqlPersistenceService

Nota

Quando si utilizzano gli oggetti SqlTrackingService e SqlWorkflowPersistenceService in un'applicazione del flusso di lavoro, è consigliabile utilizzare un unico database per la persistenza e il rilevamento.

  1. Nell'area di lavoro SQL Query Analyzer, selezionare il database creato al passaggio 1 nell'elenco di database disponibili.

  2. Nel menu File, fare clic su Apri e aprire lo script SQL %WINDIR%\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\<lingua>\SqlPersistenceService_Schema.

  3. Eseguire la query facendo clic su Esegui o premendo F5 per creare le tabelle del servizio di persistenza SQL.

  4. Nel menu File, fare clic su Apri e aprire lo script SQL %WINDIR%\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\<lingua>\SqlPersistenceService_Logic.

  5. Eseguire la query facendo clic su Esegui o premendo F5 per creare le stored procedure del servizio di persistenza SQL.

Per generare l'esempio

  1. Scaricare l'esempio facendo clic su Scarica esempio.

    In tal modo viene estratto il progetto di esempio sul disco rigido locale.

  2. Fare clic sul pulsante Start, scegliere Programmi, Microsoft Windows SDK e fare clic su CMD Shell.

  3. Accedere alla directory di origine dell'esempio.

  4. Al prompt dei comandi, immettere MSBUILD <nome file soluzione>.

Per eseguire l'esempio

  • Nella finestra del prompt dei comandi di SDK, eseguire il file exe nella cartella DynamicUpdateFromWorkflow\bin\debug (o nella cartella DynamicUpdateFromWorkflow\bin per la versione VB dell'esempio), collocata sotto la cartella principale dell'esempio.

Vedere anche

Riferimenti

WorkflowChanges
ApplyWorkflowChanges

Altre risorse

Using Dynamic Updates in Workflows
Applying Dynamic Updates to Workflows
Esempi di aggiornamento dinamico
Esempio di aggiornamento dinamico dall'host
Dynamic Updates to Rule Conditions

Footer image

Copyright © 2007 Microsoft Corporation. Tutti i diritti riservati.