WorkflowApplication Constructors
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse.
Overloads
| Name | Description |
|---|---|
| WorkflowApplication(Activity) |
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse met de opgegeven werkstroomdefinitie. |
| WorkflowApplication(Activity, WorkflowIdentity) |
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse met de opgegeven werkstroomdefinitie en definitie-id. |
| WorkflowApplication(Activity, IDictionary<String,Object>) |
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse die gebruikmaakt van de opgegeven werkstroomdefinitie en argumentwaarden. |
| WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity) |
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse die gebruikmaakt van de opgegeven werkstroomdefinitie en argumentwaarden en definitie-id. |
WorkflowApplication(Activity)
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse met de opgegeven werkstroomdefinitie.
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)
Parameters
- workflowDefinition
- Activity
De werkstroomdefinitie.
Voorbeelden
In het volgende voorbeeld wordt een werkstroom gehost met behulp van WorkflowApplication. Een WorkflowApplication exemplaar wordt samengesteld met behulp van een werkstroomdefinitie die bestaat uit één DiceRoll activiteit. De DiceRoll activiteit heeft twee uitvoerargumenten die de resultaten van de dobbelsteendraaibewerking vertegenwoordigen. Wanneer de werkstroom is voltooid, worden de uitvoer opgehaald in de Completed handler en wordt de volgende uitvoer weergegeven in de 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();
Van toepassing op
WorkflowApplication(Activity, WorkflowIdentity)
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse met de opgegeven werkstroomdefinitie en definitie-id.
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)
Parameters
- workflowDefinition
- Activity
De werkstroomdefinitie.
- definitionIdentity
- WorkflowIdentity
De definitie-id.
Van toepassing op
WorkflowApplication(Activity, IDictionary<String,Object>)
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse die gebruikmaakt van de opgegeven werkstroomdefinitie en argumentwaarden.
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))
Parameters
- workflowDefinition
- Activity
De werkstroomdefinitie.
- inputs
- IDictionary<String,Object>
De waarden voor argumenten die zijn gedefinieerd voor de hoofdactiviteit van de werkstroomdefinitie, gesleuteld op argumentnaam.
Voorbeelden
In het volgende voorbeeld wordt een werkstroom gehost met behulp van WorkflowApplication. Een WorkflowApplication exemplaar wordt samengesteld met behulp van een werkstroomdefinitie die bestaat uit één Divide activiteit die twee invoerargumenten gebruikt en een woordenlijst met invoerargumenten die de twee waarden bevatten die moeten worden doorgegeven, met de naam van het argument. De gewenste levenscyclusgebeurtenissen voor werkstromen worden verwerkt en de werkstroom wordt aangeroepen met een aanroep naar Run. Wanneer de werkstroom is voltooid, wordt de volgende uitvoer weergegeven in de 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();
Van toepassing op
WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity)
Hiermee maakt u een nieuw exemplaar van de WorkflowApplication klasse die gebruikmaakt van de opgegeven werkstroomdefinitie en argumentwaarden en definitie-id.
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)
Parameters
- workflowDefinition
- Activity
De werkstroomdefinitie.
- inputs
- IDictionary<String,Object>
De definitie-id.
- definitionIdentity
- WorkflowIdentity
De waarden voor argumenten die zijn gedefinieerd voor de hoofdactiviteit van de werkstroomdefinitie, gesleuteld op argumentnaam.