Десериализация фундамента рабочего процесса из бизнес-объектов - PullRequest
1 голос
/ 23 февраля 2011

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

Может быть, я что-то пропустил. Можете ли вы поделиться примерами сохранения / загрузки незавершенных рабочих процессов, если это возможно? Возможно, альтернативные рабочие среды могут обойтись без сериализации / десериализации Например, его можно восстановить из состояния бизнес-объекта.

1 Ответ

2 голосов
/ 23 февраля 2011

Ты думаешь, что слишком маленький.Есть много применений помимо того, что вы можете себе представить прямо сейчас.Все платформы рабочих процессов (если они не используют некоторый тип объекта db?) Будут сериализовать состояние рабочего процесса, чтобы его можно было продолжить в более позднее время.Microsoft WF, K2 BlackPerl и многие другие делают это.K2 делает это, потому что вы можете иметь элемент, проходящий через рабочий процесс v1, а затем прямо посередине кто-то обновит рабочий процесс до v2, но K2 достаточно умен, чтобы знать, что он должен продолжить обработку этого элемента в рабочем процессе v1.

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

...