WorkflowApplication Constructeurs
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée une instance de la classe WorkflowApplication.
Surcharges
WorkflowApplication(Activity) |
Initialise une instance de la classe WorkflowApplication avec la définition de flux de travail spécifiée. |
WorkflowApplication(Activity, WorkflowIdentity) |
Initialise une instance de la classe WorkflowApplication avec la définition de flux de travail et l'identité de définition spécifiées. |
WorkflowApplication(Activity, IDictionary<String,Object>) |
Crée une instance de la classe WorkflowApplication qui utilise la définition de flux de travail et les valeurs d’argument spécifiées. |
WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity) |
Crée une instance de la classe WorkflowApplication qui utilise la définition de flux de travail, les valeurs d'argument et l'identité de définition spécifiées. |
WorkflowApplication(Activity)
Initialise une instance de la classe WorkflowApplication avec la définition de flux de travail spécifiée.
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)
Paramètres
- workflowDefinition
- Activity
Définition de flux de travail.
Exemples
L'exemple suivant héberge un workflow à l'aide de WorkflowApplication. Une instance WorkflowApplication est construite avec une définition de workflow qui se compose d’une seule activité DiceRoll
. L’activité DiceRoll
a deux arguments de sortie qui représentent les résultats du jet de dés. Lorsque le flux de travail se termine, les sorties sont récupérées dans le gestionnaire d'événements Completed et la sortie suivante s'affiche sur la 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();
S’applique à
WorkflowApplication(Activity, WorkflowIdentity)
Initialise une instance de la classe WorkflowApplication avec la définition de flux de travail et l'identité de définition spécifiées.
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)
Paramètres
- workflowDefinition
- Activity
Définition de flux de travail.
- definitionIdentity
- WorkflowIdentity
Identité de définition.
S’applique à
WorkflowApplication(Activity, IDictionary<String,Object>)
Crée une instance de la classe WorkflowApplication qui utilise la définition de flux de travail et les valeurs d’argument spécifiées.
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))
Paramètres
- workflowDefinition
- Activity
Définition de flux de travail.
- inputs
- IDictionary<String,Object>
Valeurs des arguments définis sur l’activité racine de la définition de flux de travail ; elles sont indexées par nom d’argument.
Exemples
L'exemple suivant héberge un workflow à l'aide de WorkflowApplication. Un WorkflowApplication instance est construit à l’aide d’une définition de flux de travail composée d’une seule Divide
activité qui prend deux arguments d’entrée et d’un dictionnaire d’arguments d’entrée contenant les deux valeurs à passer, clé par nom d’argument. Les événements de cycle de vie souhaités du flux de travail sont gérés et le flux de travail est appelé au moyen d'un appel à Run. Lorsque le flux de travail est terminé, la sortie suivante s'affiche sur la 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();
S’applique à
WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity)
Crée une instance de la classe WorkflowApplication qui utilise la définition de flux de travail, les valeurs d'argument et l'identité de définition spécifiées.
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)
Paramètres
- workflowDefinition
- Activity
Définition de flux de travail.
- inputs
- IDictionary<String,Object>
Identité de définition.
- definitionIdentity
- WorkflowIdentity
Valeurs des arguments définis sur l’activité racine de la définition de flux de travail ; elles sont indexées par nom d’argument.