Workflow Foundation предназначен для длительных процессов (дней, недель, месяцев), которые могут «засыпать» на одном компьютере и «просыпаться» на другом.Примером может служить система уведомлений о неполадках, где рабочий процесс начинается на рабочей станции человека, сообщающего о проблеме, может «проснуться» внутри сервера где-то, что решает, какой отдел его обрабатывает, снова проснется в системе этого отдела и может быть дальшеобрабатываются менеджерами, отделами контроля качества, отделами выставления счетов и т. д.
Без дополнительной информации о вашей проблеме то, что вы ищете, не похоже на то, для чего предназначен WWF, и если вы попытаетесьиспользуя WWF, вы, вероятно, в конечном итоге получите слишком сложную систему для обслуживания.
Проблема написания кода таким образом, чтобы он оставался обслуживаемым, устарела, и это то, чем являются большинство модных слов CSпытаемся решить: программирование сверху вниз, объектно-ориентированное программирование, CASE, UML, внедрение зависимостей и так далее.
В вашем случае может оказаться, что вам просто нужна комбинация нисходящего программирования (начните с вашей потоковой диаграммы, затем напишите ее в виде псевдокода, затем преобразуйте ее в исполняемый код) плюс рефакторинг.
Другими словами, напишите его первым способом, который вам придет, затем пересмотрите код, чтобы найти возможности для его улучшения, объедините дублированный код в абстракции и библиотеки, удалите потерянный код и т. Д. Регулярный рефакторинг может сохранитькодовая база в форме, которую легко поддерживать, не требуя большой абстракции, такой как WWF, и всех сложностей, которые они несут с собой.