WorkflowApplication Konstruktorer
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar en ny instans av WorkflowApplication klassen.
Överlagringar
| Name | Description |
|---|---|
| WorkflowApplication(Activity) |
Skapar en ny instans av WorkflowApplication klassen med den angivna arbetsflödesdefinitionen. |
| WorkflowApplication(Activity, WorkflowIdentity) |
Skapar en ny instans av WorkflowApplication klassen med den angivna arbetsflödesdefinitionen och definitionsidentiteten. |
| WorkflowApplication(Activity, IDictionary<String,Object>) |
Skapar en ny instans av WorkflowApplication klassen som använder den angivna arbetsflödesdefinitionen och argumentvärdena. |
| WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity) |
Skapar en ny instans av WorkflowApplication klassen som använder den angivna arbetsflödesdefinitionen och argumentvärdena samt definitionsidentiteten. |
WorkflowApplication(Activity)
Skapar en ny instans av WorkflowApplication klassen med den angivna arbetsflödesdefinitionen.
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)
Parametrar
- workflowDefinition
- Activity
Arbetsflödesdefinitionen.
Exempel
I följande exempel finns ett arbetsflöde med .WorkflowApplication En WorkflowApplication instans skapas med hjälp av en arbetsflödesdefinition som består av en enda DiceRoll aktivitet. Aktiviteten DiceRoll har två utdataargument som representerar resultatet av tärningskaståtgärden. När arbetsflödet är klart hämtas utdata i Completed hanteraren och följande utdata visas i konsolen.
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();
Gäller för
WorkflowApplication(Activity, WorkflowIdentity)
Skapar en ny instans av WorkflowApplication klassen med den angivna arbetsflödesdefinitionen och definitionsidentiteten.
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)
Parametrar
- workflowDefinition
- Activity
Arbetsflödesdefinitionen.
- definitionIdentity
- WorkflowIdentity
Definitionsidentiteten.
Gäller för
WorkflowApplication(Activity, IDictionary<String,Object>)
Skapar en ny instans av WorkflowApplication klassen som använder den angivna arbetsflödesdefinitionen och argumentvärdena.
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))
Parametrar
- workflowDefinition
- Activity
Arbetsflödesdefinitionen.
- inputs
- IDictionary<String,Object>
Värdena för argument som definierats för rotaktiviteten i arbetsflödesdefinitionen, med argumentnamnet som huvudnamn.
Exempel
I följande exempel finns ett arbetsflöde med .WorkflowApplication En WorkflowApplication instans konstrueras med hjälp av en arbetsflödesdefinition som består av en enda Divide aktivitet som tar två indataargument och en ordlista med indataargument som innehåller de två värden som ska skickas, med argumentnamnet som nyckel. Önskade livscykelhändelser för arbetsflödet hanteras och arbetsflödet anropas med ett anrop till Run. När arbetsflödet har slutförts visas följande utdata i konsolen.
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();
Gäller för
WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity)
Skapar en ny instans av WorkflowApplication klassen som använder den angivna arbetsflödesdefinitionen och argumentvärdena samt definitionsidentiteten.
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)
Parametrar
- workflowDefinition
- Activity
Arbetsflödesdefinitionen.
- inputs
- IDictionary<String,Object>
Definitionsidentiteten.
- definitionIdentity
- WorkflowIdentity
Värdena för argument som definierats för rotaktiviteten i arbetsflödesdefinitionen, med argumentnamnet som huvudnamn.