Aracılığıyla paylaş


WorkflowApplication Oluşturucular

Tanım

WorkflowApplication sınıfının yeni bir örneğini oluşturur.

Aşırı Yüklemeler

WorkflowApplication(Activity)

Belirtilen iş akışı tanımıyla sınıfının yeni bir örneğini WorkflowApplication oluşturur.

WorkflowApplication(Activity, WorkflowIdentity)

Belirtilen iş akışı tanımı ve tanım kimliğiyle sınıfının yeni bir örneğini WorkflowApplication oluşturur.

WorkflowApplication(Activity, IDictionary<String,Object>)

Belirtilen iş akışı tanımını ve bağımsız değişken değerlerini kullanan sınıfının yeni bir örneğini WorkflowApplication oluşturur.

WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity)

Belirtilen iş akışı tanımını, bağımsız değişken değerlerini ve tanım kimliğini kullanan sınıfının yeni bir örneğini WorkflowApplication oluşturur.

WorkflowApplication(Activity)

Belirtilen iş akışı tanımıyla sınıfının yeni bir örneğini WorkflowApplication oluşturur.

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)

Parametreler

workflowDefinition
Activity

İş akışı tanımı.

Örnekler

Aşağıdaki örnek kullanarak WorkflowApplicationbir iş akışı barındırıyor. Örnek WorkflowApplication , tek DiceRoll bir etkinlik içeren bir iş akışı tanımı kullanılarak oluşturulur. Etkinlik, DiceRoll zar atma işleminin sonuçlarını temsil eden iki çıkış bağımsız değişkenine sahiptir. İş akışı tamamlandığında, çıkışlar işleyicide Completed alınır ve konsolda aşağıdaki çıkış görüntülenir.

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();

Şunlara uygulanır

WorkflowApplication(Activity, WorkflowIdentity)

Belirtilen iş akışı tanımı ve tanım kimliğiyle sınıfının yeni bir örneğini WorkflowApplication oluşturur.

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)

Parametreler

workflowDefinition
Activity

İş akışı tanımı.

definitionIdentity
WorkflowIdentity

Tanım kimliği.

Şunlara uygulanır

WorkflowApplication(Activity, IDictionary<String,Object>)

Belirtilen iş akışı tanımını ve bağımsız değişken değerlerini kullanan sınıfının yeni bir örneğini WorkflowApplication oluşturur.

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))

Parametreler

workflowDefinition
Activity

İş akışı tanımı.

inputs
IDictionary<String,Object>

İş akışı tanımının kök etkinliğinde tanımlanan bağımsız değişkenlerin değerleri, bağımsız değişken adına göre anahtarlanır.

Örnekler

Aşağıdaki örnek kullanarak WorkflowApplicationbir iş akışı barındırıyor. Örnek WorkflowApplication , iki giriş bağımsız değişkeni alan tek Divide bir etkinlik ve geçirilecek iki değeri içeren bir giriş bağımsız değişken sözlüğünden oluşan ve bağımsız değişken adına göre anahtarlanan bir iş akışı tanımı kullanılarak oluşturulur. İstenen iş akışı yaşam döngüsü olayları işlenir ve iş akışı çağrısıyla Runçağrılır. İş akışı tamamlandığında konsolda aşağıdaki çıkış görüntülenir.

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();

Şunlara uygulanır

WorkflowApplication(Activity, IDictionary<String,Object>, WorkflowIdentity)

Belirtilen iş akışı tanımını, bağımsız değişken değerlerini ve tanım kimliğini kullanan sınıfının yeni bir örneğini WorkflowApplication oluşturur.

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)

Parametreler

workflowDefinition
Activity

İş akışı tanımı.

inputs
IDictionary<String,Object>

Tanım kimliği.

definitionIdentity
WorkflowIdentity

İş akışı tanımının kök etkinliğinde tanımlanan bağımsız değişkenlerin değerleri, bağımsız değişken adına göre anahtarlanır.

Şunlara uygulanır