WorkflowRuntime Конструкторы

Определение

Инициализирует новый экземпляр класса WorkflowRuntime.

Перегрузки

WorkflowRuntime()

Инициализирует новый экземпляр класса WorkflowRuntime.

WorkflowRuntime(String)

Инициализирует новый экземпляр класса WorkflowRuntime, используя указанный раздел файла конфигурации приложения.

WorkflowRuntime(WorkflowRuntimeSection)

Инициализирует новый экземпляр класса WorkflowRuntime, используя настройки в указанном разделе WorkflowRuntimeSection.

WorkflowRuntime()

Инициализирует новый экземпляр класса WorkflowRuntime.

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

Примеры

В следующем примере кода показано использование функций класса WorkflowRuntime с узла рабочего процесса. Он содержит пример использования конструктора WorkflowRuntime для создания экземпляра класса WorkflowRuntime и доступа к его методам и событиям.

Этот пример кода является частью примера отмены рабочего процесса .

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

Комментарии

Объект WorkflowRuntime инициализируется со значениями свойств по умолчанию и содержит базовые службы по умолчанию. Для дополнительной настройки механизма среды выполнения рабочих процессов можно добавлять и удалять службы с помощью методов AddService и RemoveService; также можно задать свойство Name. После настройки объекта WorkflowRuntime вызовите метод StartRuntime, чтобы запустить механизм среды выполнения рабочих процессов и его службы.

В следующей таблице представлены начальные значения свойств для экземпляра класса WorkflowRuntime.

Свойство. Начальное значение
Name «WorkflowRuntime»
IsStarted false

Базовыми службами по умолчанию являются: DefaultWorkflowCommitWorkBatchService и DefaultWorkflowSchedulerService.

Применяется к

WorkflowRuntime(String)

Инициализирует новый экземпляр класса WorkflowRuntime, используя указанный раздел файла конфигурации приложения.

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)

Параметры

configSectionName
String

Имя допустимого раздела workflowSettings в файле конфигурации приложения.

Исключения

Параметр configSectionName является неопределенной ссылкой (Nothing в Visual Basic).

Не удалось найти допустимый раздел workflowSettings в файле конфигурации приложения.

Для этого домена приложения уже существует объект WorkflowRuntime.

Комментарии

Объект WorkflowRuntime инициализируется в соответствии с настройками в разделе, указанном параметром configSectionName в файле конфигурации приложения. configSectionName должен соответствовать допустимому workflowSettings разделу файла конфигурации.

Когда обработчик среды выполнения рабочего процесса настраивается с помощью файла конфигурации приложения, он загружает и создает экземпляры классов типов, перечисленных в Services разделе файла конфигурации. При создании этих классов механизм среды выполнения рабочих процессов выполняет поиск конструкторов классов со следующими сигнатурами в следующем порядке.

  1. Служба(среда выполнения WorkflowRuntime, параметры NameValueCollection)

  2. Служба(среда выполнения WorkflowRuntime)

  3. Служба(параметры NameValueCollection)

  4. Служба()

Все классы служб, загружаемые из файла конфигурации, должны реализовывать хотя бы одну из этих сигнатур конструкторов.

Для получения дополнительной информации см. WorkflowRuntimeSection.

Применяется к

WorkflowRuntime(WorkflowRuntimeSection)

Инициализирует новый экземпляр класса WorkflowRuntime, используя настройки в указанном разделе 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)

Параметры

Исключения

Параметр settings является неопределенной ссылкой (Nothing в Visual Basic).

Для этого домена приложения уже существует объект WorkflowRuntime.

Комментарии

Этот конструктор предоставляет средства для настройки механизма среды выполнения рабочих процессов с помощью одного вызова метода для узлов, которые не используют файл конфигурации. Имеется много причин, чтобы не использовать файл конфигурации приложения. Ведущее приложение может выполняться в среде, не допускающей использование файлов конфигурации, например в доверенной среде, не разрешающей чтение из файла конфигурации приложения по соображениям безопасности. Кроме того, ведущее приложение может использовать собственный механизм настройки, например хранить параметры конфигурации механизма среды выполнения рабочих процессов в базе данных SQL.

Механизм среды выполнения рабочих процессов загрузит и создаст классы типов, которые содержатся в свойстве WorkflowRuntimeSection.Services. При создании этих классов механизм среды выполнения рабочих процессов выполняет поиск конструкторов классов со следующими сигнатурами в следующем порядке.

  1. Служба(среда выполнения WorkflowRuntime, параметры NameValueCollection)

  2. Служба(среда выполнения WorkflowRuntime)

  3. Служба(параметры NameValueCollection)

  4. Служба()

Все классы служб, указанные в settings, должны реализовывать хотя бы одну из этих сигнатур конструкторов.

Применяется к