WF4 вызывает службу WCF - PullRequest
       41

WF4 вызывает службу WCF

3 голосов
/ 10 января 2012

У меня проблема при попытке заставить рабочий процесс (WF4) вызывать долго работающую службу WCF и затем возобновлять обработку после завершения службы WCF.Диаграмма ниже дает приблизительное представление о том, чего я пытаюсь достичь.Если бы вы могли указать мне на любые образцы, которые демонстрируют этот сценарий (или что-то очень похожее), это было бы очень ценно.Для информации, я видел много примеров WF to WF, которые не очень помогли.

enter image description here

1 Ответ

0 голосов
/ 10 января 2012

Вы рассматривали корреляцию? Это обрабатывается для вас WF4? в WF3 это не предлагалось из коробки. Это означало, что если вы отправите запрос из давно работающей службы, WF3 не будет знать, к какому экземпляру рабочего процесса направить ответные сообщения.

Без корреляции обратный вызов из WCF не будет перенаправлен в «ожидающий» экземпляр рабочего процесса.

UPDATE

Вы записываете токен корреляции в сообщение обратного вызова?

ОБНОВЛЕНИЕ

Извините, у меня нет примеров, поскольку я не являюсь пользователем WF4. Мне пришлось реализовать корреляцию в WF3, потому что он не предлагал эту функцию. Для этого я создал службу поиска, которая отображала значения корреляции в направляющие экземпляров рабочего процесса, и тогда входящие вызовы могли предназначаться для определенных экземпляров через wsHttpContextBinding.

Но WF4 позволяет вам инициализировать и отслеживать корреляцию при каждой операции отправки и получения. Вы можете прочитать об этом здесь:

http://blogs.msdn.com/b/endpoint/archive/2010/01/04/what-s-a-correlation-and-why-do-i-want-to-initialize-it.aspx

http://msdn.microsoft.com/en-us/library/ee358755(VS.100).aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...