Повторное использование Receive/SendReply в WF4

Как можно получить/SendReply повторно использовать в WF (4)? Например

Receive/SendReply (Start)
Process data
Decision (data is valid?)
  True
    Pick
      1) Receive/SendReply (Confirm)
      2) Receive/SendReply (Input data)
      3) Receive/SendReply (Restart)
  False
    Pick
      1) Receive/SendReply (Input data)
      2) Receive/SendReply (Restart)

Должно быть возможно вызвать Input data и Restart в двух разных Pick s.

В настоящее время я использую WF 4, но я хотел бы услышать, имеет ли 4.5 более простое решение.

0
nl ja de

2 ответы

Просто создайте настраиваемую составную активность и добавьте к ней пару Receive/SendReply и повторно используйте эту настраиваемую активность в нескольких местах. Это было основным механизмом повторного использования в WF4 с момента его выпуска.

0
добавлено
Как насчет того, нужно ли положить Получить в Trigger и SendReply в Action PickBranch ? Возможно ли создать многоразовый PickBranch ?
добавлено автор Mika Kolari, источник
Действия PickBranch запечатаны, поэтому вы не можете там ничего сделать. Лучшим вариантом было бы создать последовательность с предварительно сконфигурированным Receive и другим с предварительно настроенным SendReply. Тем не менее, в нескольких случаях вы можете уйти с помощью пары Receive/SendReply в триггере PickBranch.
добавлено автор Maurice, источник

PickBranch запечатан, поэтому вы не можете пройти маршрут x: Class. Это взлом, но вы можете использовать пользовательский MarkupExtension для достижения ваших потребностей.

0
добавлено