WorkflowApplication Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea una nuova istanza della WorkflowApplication classe .
Overload
| Nome | Descrizione |
|---|---|
| WorkflowApplication(Activity) |
Crea una nuova istanza della WorkflowApplication classe con la definizione del flusso di lavoro specificata. |
| WorkflowApplication(Activity, WorkflowIdentity) |
Crea una nuova istanza della WorkflowApplication classe con la definizione e l'identità di definizione del flusso di lavoro specificati. |
| WorkflowApplication(Activity, IDictionary<String,Object>) |
Crea una nuova istanza della WorkflowApplication classe che utilizza la definizione del flusso di lavoro e i valori dell'argomento specificati. |
| WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity) |
Crea una nuova istanza della WorkflowApplication classe che usa la definizione del flusso di lavoro e i valori degli argomenti specificati e l'identità della definizione. |
WorkflowApplication(Activity)
Crea una nuova istanza della WorkflowApplication classe con la definizione del flusso di lavoro specificata.
public:
WorkflowApplication(System::Activities::Activity ^ workflowDefinition);
public WorkflowApplication(System.Activities.Activity workflowDefinition);
new System.Activities.WorkflowApplication : System.Activities.Activity -> System.Activities.WorkflowApplication
Public Sub New (workflowDefinition As Activity)
Parametri
- workflowDefinition
- Activity
Definizione del flusso di lavoro.
Esempio
Nell'esempio seguente viene ospitato un flusso di lavoro usando WorkflowApplication. Un'istanza di WorkflowApplication viene costruita usando una definizione del flusso di lavoro costituita da una singola attività DiceRoll. L'attività DiceRoll ha due argomenti di output che rappresentano i risultati dell'operazione di lancio dei dadi. Al termine del flusso di lavoro, gli output vengono recuperati nel Completed gestore e l'output seguente viene visualizzato nella console.
Workflow aae3fb48-7229-4737-b969-d63e131b96b3 Completed.
The two dice are 1 and 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();
Si applica a
WorkflowApplication(Activity, WorkflowIdentity)
Crea una nuova istanza della WorkflowApplication classe con la definizione e l'identità di definizione del flusso di lavoro specificati.
public:
WorkflowApplication(System::Activities::Activity ^ workflowDefinition, System::Activities::WorkflowIdentity ^ definitionIdentity);
public WorkflowApplication(System.Activities.Activity workflowDefinition, System.Activities.WorkflowIdentity definitionIdentity);
new System.Activities.WorkflowApplication : System.Activities.Activity * System.Activities.WorkflowIdentity -> System.Activities.WorkflowApplication
Public Sub New (workflowDefinition As Activity, definitionIdentity As WorkflowIdentity)
Parametri
- workflowDefinition
- Activity
Definizione del flusso di lavoro.
- definitionIdentity
- WorkflowIdentity
Identità della definizione.
Si applica a
WorkflowApplication(Activity, IDictionary<String,Object>)
Crea una nuova istanza della WorkflowApplication classe che utilizza la definizione del flusso di lavoro e i valori dell'argomento specificati.
public:
WorkflowApplication(System::Activities::Activity ^ workflowDefinition, System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ inputs);
public WorkflowApplication(System.Activities.Activity workflowDefinition, System.Collections.Generic.IDictionary<string,object> inputs);
new System.Activities.WorkflowApplication : System.Activities.Activity * System.Collections.Generic.IDictionary<string, obj> -> System.Activities.WorkflowApplication
Public Sub New (workflowDefinition As Activity, inputs As IDictionary(Of String, Object))
Parametri
- workflowDefinition
- Activity
Definizione del flusso di lavoro.
- inputs
- IDictionary<String,Object>
Valori per gli argomenti definiti nell'attività radice della definizione del flusso di lavoro, con chiave in base al nome dell'argomento.
Esempio
Nell'esempio seguente viene ospitato un flusso di lavoro usando WorkflowApplication. Un'istanza WorkflowApplication viene costruita usando una definizione del flusso di lavoro costituita da una singola Divide attività che accetta due argomenti di input e un dizionario di argomenti di input contenenti i due valori da passare, con chiave in base al nome dell'argomento. Gli eventi del ciclo di vita del flusso di lavoro desiderati vengono gestiti e il flusso di lavoro viene richiamato con una chiamata a Run. Al termine del flusso di lavoro, viene visualizzato l'output seguente nella console.
Workflow 8dc844c1-bbf8-4b21-a9a2-05f89e416055 Completed
500 / 36 = 13 Remainder 32
Workflow 8dc844c1-bbf8-4b21-a9a2-05f89e416055 Unloaded.
public sealed class Divide : CodeActivity
{
[RequiredArgument]
public InArgument<int> Dividend { get; set; }
[RequiredArgument]
public InArgument<int> Divisor { get; set; }
public OutArgument<int> Remainder { get; set; }
public OutArgument<int> Result { get; set; }
protected override void Execute(CodeActivityContext context)
{
int quotient = Dividend.Get(context) / Divisor.Get(context);
int remainder = Dividend.Get(context) % Divisor.Get(context);
Result.Set(context, quotient);
Remainder.Set(context, remainder);
}
}
int dividend = 500;
int divisor = 36;
Dictionary<string, object> inputs = new Dictionary<string, object>();
inputs.Add("Dividend", dividend);
inputs.Add("Divisor", divisor);
// Create a WorkflowApplication instance.
WorkflowApplication wfApp = new WorkflowApplication(new Divide(), inputs);
// 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("{0} / {1} = {2} Remainder {3}",
dividend, divisor, e.Outputs["Result"], e.Outputs["Remainder"]);
}
};
// Run the workflow.
wfApp.Run();
Si applica a
WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity)
Crea una nuova istanza della WorkflowApplication classe che usa la definizione del flusso di lavoro e i valori degli argomenti specificati e l'identità della definizione.
public:
WorkflowApplication(System::Activities::Activity ^ workflowDefinition, System::Collections::Generic::IDictionary<System::String ^, System::Object ^> ^ inputs, System::Activities::WorkflowIdentity ^ definitionIdentity);
public WorkflowApplication(System.Activities.Activity workflowDefinition, System.Collections.Generic.IDictionary<string,object> inputs, System.Activities.WorkflowIdentity definitionIdentity);
new System.Activities.WorkflowApplication : System.Activities.Activity * System.Collections.Generic.IDictionary<string, obj> * System.Activities.WorkflowIdentity -> System.Activities.WorkflowApplication
Public Sub New (workflowDefinition As Activity, inputs As IDictionary(Of String, Object), definitionIdentity As WorkflowIdentity)
Parametri
- workflowDefinition
- Activity
Definizione del flusso di lavoro.
- inputs
- IDictionary<String,Object>
Identità della definizione.
- definitionIdentity
- WorkflowIdentity
Valori per gli argomenti definiti nell'attività radice della definizione del flusso di lavoro, con chiave in base al nome dell'argomento.