Возобновить рабочий процесс конечного автомата, размещенный в службе рабочего процесса

Я пытаюсь создать прототип рабочего процесса конечного автомата, который размещается в IIS. Клиент является приложением веб-форм.

То, чего я пытаюсь добиться, - это длительный процесс в стиле "мастера", который сохраняется в базе данных. Рабочий процесс конечного автомата в основном управляет текущей страницей веб-форм в зависимости от состояния рабочего процесса.

Я хотел бы знать, как я могу найти текущее имя состояния, чтобы "возобновить" экземпляр рабочего процесса. Представьте, что кто-то проходит половину процесса мастера, а затем решает остановиться и вернуться позже, чтобы завершить его.

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

Спасибо, ребята, ваша помощь очень ценится!

1 ответ

Решение

Нет стандартного способа сделать это. Основной подход заключается в использовании TrackingParticipant и отслеживания событий. Посмотрите этот пример для начала.

Другие вопросы по тегам