Чем-то похож на этот вопрос , за исключением того, что мы еще не решили, что собираемся с WF.
Я работаю над проектированием системы, которая требует ряда решений и действий над «рабочим объектом», поэтому я, естественно, начал рассматривать рабочий процесс, в частности WF. Что мне интересно, так это то, что WF является хорошим решением для ситуации, подобной следующему (упрощенно для этого вопроса), кейс (пожалуйста, прости плохой ascii art):
__________________
| Gather some info |
| (web page) |
|__________________|
|
|
/ \
/ \
/ \
/ \
/ cond \
\ 1 /
\ /
\ /
\ /
\ /
|
|
______________|_______________
| |
| |
| ______|______
______|________ / do some /
| Get more info | / process /
| (web page) | /____________/
|_______________|
|
|
/ \
/ \
/ \
/ cond. \
\ 2 /
\ /
\ /
\ /
|
|
|__________________
| |
| |
_____|_____ _____|_____
/ some / / another /
/ process / / process /
/__________/ /__________/
Часть, с которой я борюсь, - это шаг get more info (web page)
и последующие действия, которые означают остановку выполнения рабочего процесса. Я знаю, что это возможно, но я не уверен, что WF - лучший подход для этого типа кода, так как взаимодействие с пользователем может потребоваться во многих различных точках всего рабочего процесса, и рабочий процесс будет управлять тем, какие данные экраны входа необходимы. Мы используем пакет веб-форм WinForms / ASP.NET для пользовательского интерфейса, который является доморощенным и трудным для развертывания, поэтому что-то вроде интеграции с SharePoint не может быть и речи. Наш сервер - DB2, и код рабочего процесса (будь то в WF или иным образом) также должен взаимодействовать с этим.
Полагаю, суть в том, стоит ли нам использовать для этого WF, или лучше бы нам самим кодировать его? Может ли WF легко интегрировать экраны ввода данных для сбора информации, которую можно использовать в дальнейшем в рабочем процессе?