Хост

Оценить
(0 голоса)

Хостинговая часть рабочего процесса — это то, на чем мы хотим сосредоточить наше вни­мание. Конечно, хост должен сделать ссылки на пространства имен Windows Workflow и на саму реальную библиотеку рабочего процесса. В нашем примере объединенный шаблон уже позаботился об этих двух требованиях.

При старте приложения хосту необходимо создать экземпляр класса Workf lowRuntime (для того чтобы создать рабочие процессы и управлять ими). Обычно это делается при помощи оператора using:

using (WorkflowRuntime workflowRuntime = new WorkflowRuntime()) {

}

В течение жизни приложения должна быть доступна исполняющая среда. Следующий шаг— запуск исполняющей среды. Вы можете либо явно вызвать для этого метод startRuntime, либо подождать создания и старта первого рабочего процесса. При этом

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

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

Workflowinstance instance = workflowRuntime.CreateWorkflow( typeof(TravelRequestWf.TravelRequestProcess));

С целью идентификации рабочего процесса для исполняющей среды используется свойство Instanceld объекта Workf lowinstance. Исполняющая среда может обеспечивать хостинг множества экземпляров. Поэтому данный идентификатор важен для идентификации выпол­няющегося рабочего процесса, с которым клиент работает или который он запрашивает. Выполняющийся рабочий процесс — это находящийся в работе процесс. Он может нахо­диться в памяти или быть сохранен в базе данных. Это свойство имеет тип Guid и может быть получено следующим образом:

Guid wfld = instance.Instanceld;

Передача параметров в рабочий процесс
Настройка вызываемого рабочим процессом кода
Создание событий из клиента
Выполнение вашего рабочего процесса
Рабочий процесс типа конечного автомата

Добавить комментарий


Защитный код
Обновить

© 2018 www.visualstudios.ru. Все права защищены.