Costruttore WorkflowApplication (Activity)

.NET Framework (current version)
 

Data di pubblicazione: ottobre 2016

Crea una nuova istanza della classe WorkflowApplication con la definizione del flusso di lavoro specificata.

Spazio dei nomi:   System.Activities
Assembly:  System.Activities (in System.Activities.dll)

public WorkflowApplication(
	Activity workflowDefinition
)

Parametri

workflowDefinition
Type: System.Activities.Activity

Definizione del flusso di lavoro.

Nell'esempio seguente viene ospitato un flusso di lavoro tramite WorkflowApplication. Un'istanza WorkflowApplication viene costruita usando una definizione di flusso di lavoro composta da una singola attività DiceRoll. L'attività DiceRoll dispone di due argomenti di output che rappresentano i risultati dell'operazione di lancio dei dadi. Quando il flusso di lavoro viene completato, gli output vengono recuperati nel gestore Completed e l'output seguente viene visualizzato alla console.

Flusso di lavoro aae3fb48-7229-4737-b969-d63e131b96b3 completato.I due dadi sono 1 e 5.
public sealed class DiceRoll : CodeActivity
{
    public OutArgument<int> D1 { get; set; }
    public OutArgument<int> D2 { get; set; }

    static Random r = new Random();

    protected override void Execute(CodeActivityContext context)
    {
        D1.Set(context, r.Next(1, 7));
        D2.Set(context, r.Next(1, 7));
    }
}
 // Create a WorkflowApplication instance.
 WorkflowApplication wfApp = new WorkflowApplication(new DiceRoll());

 // Subscribe to any desired workflow lifecycle events.
 wfApp.Completed = delegate(WorkflowApplicationCompletedEventArgs e)
 {
     if (e.CompletionState == ActivityInstanceState.Faulted)
     {
         Console.WriteLine("Workflow {0} Terminated.", e.InstanceId);
         Console.WriteLine("Exception: {0}\n{1}",
             e.TerminationException.GetType().FullName,
             e.TerminationException.Message);
     }
     else if (e.CompletionState == ActivityInstanceState.Canceled)
     {
         Console.WriteLine("Workflow {0} Canceled.", e.InstanceId);
     }
     else
     {
         Console.WriteLine("Workflow {0} Completed.", e.InstanceId);

         // Outputs can be retrieved from the Outputs dictionary,
         // keyed by argument name.
         Console.WriteLine("The two dice are {0} and {1}.",
             e.Outputs["D1"], e.Outputs["D2"]);
     }
 };

// Run the workflow.
 wfApp.Run();

.NET Framework
Disponibile da 4.0
Torna all'inizio
Mostra: