WorkflowRuntime Konstruktory

Definice

Inicializuje novou instanci WorkflowRuntime třídy.

Přetížení

WorkflowRuntime()

Inicializuje novou instanci WorkflowRuntime třídy.

WorkflowRuntime(String)

Inicializuje novou instanci WorkflowRuntime třídy pomocí zadané části konfiguračního souboru aplikace.

WorkflowRuntime(WorkflowRuntimeSection)

Inicializuje novou instanci WorkflowRuntime třídy pomocí nastavení v zadané WorkflowRuntimeSection.

WorkflowRuntime()

Inicializuje novou instanci WorkflowRuntime třídy.

public:
 WorkflowRuntime();
public WorkflowRuntime ();
Public Sub New ()

Příklady

Následující příklad kódu ukazuje, jak můžete použít WorkflowRuntime funkce z hostitele pracovního postupu. Poskytuje příklad použití konstruktoru WorkflowRuntime k vytvoření instance objektu WorkflowRuntime a přístupu k jeho metodám a událostem.

Tento příklad kódu je součástí ukázky Zrušení pracovního postupu .

static void Main()
{
    string connectionString = "Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI;";

    using (WorkflowRuntime workflowRuntime = new WorkflowRuntime())
    {
        ExternalDataExchangeService dataService = new ExternalDataExchangeService();
        workflowRuntime.AddService(dataService);
        dataService.AddService(expenseService);

        workflowRuntime.AddService(new SqlWorkflowPersistenceService(connectionString));
        workflowRuntime.StartRuntime();

        workflowRuntime.WorkflowCompleted += OnWorkflowCompleted;
        workflowRuntime.WorkflowTerminated += OnWorkflowTerminated;
        workflowRuntime.WorkflowIdled += OnWorkflowIdled;
        workflowRuntime.WorkflowAborted += OnWorkflowAborted;

        Type type = typeof(SampleWorkflow1);
        WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
        workflowInstance.Start();

        waitHandle.WaitOne();

        workflowRuntime.StopRuntime();
    }
}
Shared Sub Main()
    Dim connectionString As String = "Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI;"
    Using workflowRuntime As New WorkflowRuntime()
        Dim dataService As New ExternalDataExchangeService()
        workflowRuntime.AddService(dataService)
        dataService.AddService(expenseService)

        workflowRuntime.AddService(New SqlWorkflowPersistenceService(connectionString))


        AddHandler workflowRuntime.WorkflowCompleted, AddressOf OnWorkflowCompleted
        AddHandler workflowRuntime.WorkflowTerminated, AddressOf OnWorkflowTerminated
        AddHandler workflowRuntime.WorkflowIdled, AddressOf OnWorkflowIdled
        AddHandler workflowRuntime.WorkflowAborted, AddressOf OnWorkflowAborted


        Dim workflowInstance As WorkflowInstance
        workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
        workflowInstance.Start()

        waitHandle.WaitOne()

        workflowRuntime.StopRuntime()
    End Using
End Sub

Poznámky

Objekt WorkflowRuntime je inicializován s výchozími hodnotami vlastností a obsahuje výchozí základní služby. Pokud chcete dále nakonfigurovat modul běhu pracovního postupu, můžete přidávat a odebírat služby pomocí AddService a RemoveServicea můžete nastavit Name. Po nakonfigurování WorkflowRuntime voláním spusťte StartRuntime modul běhu pracovního postupu a jeho služby.

Následující tabulka obsahuje počáteční hodnoty vlastností pro instanci WorkflowRuntime třídy.

Vlastnost Počáteční hodnota
Name "WorkflowRuntime"
IsStarted false

Výchozí základní služby jsou DefaultWorkflowCommitWorkBatchService a DefaultWorkflowSchedulerService.

Platí pro

WorkflowRuntime(String)

Inicializuje novou instanci WorkflowRuntime třídy pomocí zadané části konfiguračního souboru aplikace.

public:
 WorkflowRuntime(System::String ^ configSectionName);
public WorkflowRuntime (string configSectionName);
new System.Workflow.Runtime.WorkflowRuntime : string -> System.Workflow.Runtime.WorkflowRuntime
Public Sub New (configSectionName As String)

Parametry

configSectionName
String

Název platného workflowSettings oddílu v konfiguračním souboru aplikace.

Výjimky

configSectionName je odkaz s hodnotou null (Nothing v jazyce Visual Basic).

V konfiguračním souboru aplikace nebyl nalezen platný workflowSettings oddíl.

Doména WorkflowRuntime této aplikace již existuje.

Poznámky

Inicializuje WorkflowRuntime se podle nastavení v části zadané v konfiguračním configSectionName souboru aplikace. configSectionName musí odpovídat platné workflowSettings části konfiguračního souboru.

Při konfiguraci modulu runtime pracovního postupu pomocí konfiguračního souboru aplikace se načte a vytvoří instance tříd typů uvedených v Services části konfiguračního souboru. Když modul běhu pracovního postupu vytvoří tyto třídy, hledá konstruktory tříd s následujícími podpisy v následujícím pořadí:

  1. Service(WorkflowRuntime runtime, NameValueCollection parametry)

  2. Service(WorkflowRuntime runtime)

  3. Service(Parametry NameValueCollection)

  4. Service()

Všechny třídy služby, které jsou načteny z konfiguračního souboru musí implementovat alespoň jeden z těchto podpisů konstruktoru.

Další informace naleznete v tématu WorkflowRuntimeSection.

Platí pro

WorkflowRuntime(WorkflowRuntimeSection)

Inicializuje novou instanci WorkflowRuntime třídy pomocí nastavení v zadané WorkflowRuntimeSection.

public:
 WorkflowRuntime(System::Workflow::Runtime::Configuration::WorkflowRuntimeSection ^ settings);
public WorkflowRuntime (System.Workflow.Runtime.Configuration.WorkflowRuntimeSection settings);
new System.Workflow.Runtime.WorkflowRuntime : System.Workflow.Runtime.Configuration.WorkflowRuntimeSection -> System.Workflow.Runtime.WorkflowRuntime
Public Sub New (settings As WorkflowRuntimeSection)

Parametry

Výjimky

settings je odkaz s hodnotou null (Nothing v jazyce Visual Basic).

Doména WorkflowRuntime této aplikace již existuje.

Poznámky

Tento konstruktor poskytuje mechanismus pro konfiguraci modulu běhu pracovního postupu pomocí volání jedné metody pro hostitele, kteří nepoužívají konfigurační soubor aplikace. Existuje mnoho důvodů, proč konfigurační soubor aplikace nepoužíváte. Hostitel může běžet v prostředí, které nepovoluje použití konfiguračních souborů; například v důvěryhodných prostředích, která z bezpečnostních důvodů neumožňují čtení z konfiguračního souboru aplikace. Hostitel také může použít proprietární konfigurační mechanismus; Hostitel může například uložit nastavení konfigurace modulu běhu pracovního postupu do databáze SQL.

Modul běhu pracovního postupu načte a vytvoří instance tříd typů obsažených v WorkflowRuntimeSection.Servicesnástroji . Když modul běhu pracovního postupu vytvoří tyto třídy, hledá konstruktory tříd s následujícími podpisy v následujícím pořadí:

  1. Service(WorkflowRuntime runtime, NameValueCollection parametry)

  2. Service(WorkflowRuntime runtime)

  3. Service(Parametry NameValueCollection)

  4. Service()

Všechny třídy služby, které jsou zadány v settings musí implementovat alespoň jeden z těchto podpisů konstruktoru.

Platí pro