WorkflowRuntime Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse.
Überlädt
WorkflowRuntime() |
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse. |
WorkflowRuntime(String) |
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse, indem der angegebene Abschnitt der Anwendungskonfigurationsdatei verwendet wird. |
WorkflowRuntime(WorkflowRuntimeSection) |
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse mithilfe der Einstellungen im angegebenen WorkflowRuntimeSection. |
WorkflowRuntime()
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse.
public:
WorkflowRuntime();
public WorkflowRuntime ();
Public Sub New ()
Beispiele
Das folgende Codebeispiel zeigt, wie Sie die WorkflowRuntime-Funktionalität eines Workflowhosts verwenden können. Es enthält ein Beispiel dafür, wie Sie den WorkflowRuntime-Konstruktor verwenden, um eine WorkflowRuntime-Instanz zu erstellen und auf die dazugehörigen Methoden und Ereignisse zuzugreifen.
Dieses Codebeispiel ist Teil des Beispiels Zum Abbrechen eines Workflows .
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
Hinweise
WorkflowRuntime wird mit den Standardeigenschaftswerten initialisiert und enthält die Standardbasisdienste. Um zusätzlich die Workflowruntime-Engine zu konfigurieren, können Sie Dienste hinzufügen bzw. entfernen, indem Sie AddService und RemoveService verwenden, und Sie können Name festlegen. Nachdem WorkflowRuntime konfiguriert wurde, rufen Sie StartRuntime auf, um die Workflowruntime-Engine und ihre Dienste zu starten.
In der folgenden Tabelle werden die anfänglichen Eigenschaftswerte für eine Instanz der WorkflowRuntime-Klasse angezeigt.
Eigenschaft | Anfangswert |
---|---|
Name | WorkflowRuntime |
IsStarted | false |
Die Standardbasisdienste lauten DefaultWorkflowCommitWorkBatchService und DefaultWorkflowSchedulerService.
Gilt für:
WorkflowRuntime(String)
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse, indem der angegebene Abschnitt der Anwendungskonfigurationsdatei verwendet wird.
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)
Parameter
- configSectionName
- String
Der Name eines gültigen workflowSettings
-Abschnitts in der Anwendungskonfigurationsdatei.
Ausnahmen
configSectionName
ist ein NULL-Verweis (Nothing
in Visual Basic).
In der Anwendungskonfigurationsdatei konnte kein gültiger workflowSettings
-Abschnitt gefunden werden.
Für diese Anwendungsdomäne ist bereits ein WorkflowRuntime-Element vorhanden.
Hinweise
WorkflowRuntime wird basierend auf den Einstellungen in dem Abschnitt initialisiert, der in der Anwendungskonfigurationsdatei mithilfe von configSectionName
angegeben ist.
configSectionName
muss einem gültigen workflowSettings
Abschnitt einer Konfigurationsdatei entsprechen.
Wenn die Workflowlaufzeit-Engine mithilfe einer Anwendungskonfigurationsdatei konfiguriert wird, werden Klassen der im Abschnitt der Services
Konfigurationsdatei aufgeführten Typen geladen und instanziiert. Wenn die Workflowruntime-Engine diese Klassen erstellt, sucht sie nach Klassenkonstruktoren mit den folgenden Signaturen in der folgenden Reihenfolge:
Dienst(WorkflowRuntime-Laufzeit, NameValueCollection-Parameter)
Dienst(WorkflowRuntime-Laufzeit)
Dienst(NameValueCollection-Parameter)
Dienst()
Alle Dienstklassen, die aus einer Konfigurationsdatei geladen werden, müssen mindestens eine dieser Konstruktorsignaturen implementieren.
Weitere Informationen finden Sie unter WorkflowRuntimeSection.
Gilt für:
WorkflowRuntime(WorkflowRuntimeSection)
Initialisiert eine neue Instanz der WorkflowRuntime-Klasse mithilfe der Einstellungen im angegebenen 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)
Parameter
- settings
- WorkflowRuntimeSection
Ausnahmen
settings
ist ein NULL-Verweis (Nothing
in Visual Basic).
Für diese Anwendungsdomäne ist bereits ein WorkflowRuntime-Element vorhanden.
Hinweise
Dieser Konstruktor stellt einen Mechanismus zum Konfigurieren der Workflowruntime-Engine bereit. Dabei wird ein einzelner Methodenaufruf für Hosts verwendet, die keine Anwendungskonfigurationsdatei verwenden. Es kann viele Gründe dafür geben, die Anwendungskonfigurationsdatei nicht zu verwenden. Ein Host kann beispielsweise in einer Umgebung ausgeführt werden, in der die Verwendung von Konfigurationsdateien nicht zulässig ist. Dies kann in vertrauenswürdigen Umgebungen der Fall sein, die aus Sicherheitsgründen das Lesen aus der Anwendungskonfigurationsdatei nicht zulassen. Zudem kann ein Host ein eigenes Konfigurationsverfahren verwenden. Hosts können die Konfigurationseinstellungen der Workflowruntime-Engine beispielsweise in einer SQL-Datenbank speichern.
Die Workflowruntime-Engine lädt und instanziiert Klassen der Typen, die in WorkflowRuntimeSection.Services enthalten sind. Wenn die Workflowruntime-Engine diese Klassen erstellt, sucht sie nach Klassenkonstruktoren mit den folgenden Signaturen in der folgenden Reihenfolge:
Dienst(WorkflowRuntime-Laufzeit, NameValueCollection-Parameter)
Dienst(WorkflowRuntime-Laufzeit)
Dienst(NameValueCollection-Parameter)
Dienst()
Alle Dienstklassen, die unter settings
angegeben werden, müssen mindestens eine dieser Konstruktorsignaturen implementieren.