Скорее всего, вы получите какое-то странное исключение преобразования типов. WF4 не поддерживает обновление существующего экземпляра рабочего процесса до более новой версии. Серьезная проблема, если вы не знаете об этом.
Предлагаемый способ решения этой проблемы с использованием рабочих процессов состоит в том, чтобы использовать несколько хостов-служб, каждый из которых размещает уникальную версию, и ставит перед ним сервисный маршрутизатор, новый в WCF 4. Клиент отправляет сообщения на маршрутизатор, и это решает на основе сообщения, которое WorkflowServiceHost должен обрабатывать.
Если вы используете WorkflowApplication, в основном вам нужно сделать что-то подобное. Следите за версиями экземпляров и загружайте правильное определение рабочего процесса, когда вы хотите перезагрузить экземпляр рабочего процесса.
Как я вижу, я сохраняю все эти службы в IIS и помещаю перед ним маршрутизатор сообщений, который перенаправляет сообщение на версию, запрошенную в сообщении. Выглядит хорошо. –
Возврат версии рабочего процесса из начального вызова и обеспечение того, что требуемый параметр для каждого последующего вызова может упростить маршрутизацию. – Maurice