Я боролся с настройкой службы рабочего процесса, которая использует msmqIntegrationBinding. Проблема, с которой я столкнулся сейчас, заключается в том, что я всегда получаю это исключение сериализации "System.ServiceModel.ProtocolException: при десериализации сообщения произошла ошибка. Сообщение не может быть получено. ---> System.Runtime.Serialization.SerializationException: Произошла ошибка при десериализации тела XML сообщения MSMQ. Сообщение не может быть получено. Убедитесь, что контракт службы оформлен соответствующими атрибутами [ServiceKnownType] или свойство TargetSerializationTypes установлено в MsmqIntegrationBindingElement. "
Насколько я понял, помощник по сериализации не может найти какие-либо типы для сериализации сообщения, хотя я использую общий тип MsmqMessage ‹MyMessageType› как в контракте службы, так и в рабочем процессе.
MyMessageType создается из файла .xsd с помощью xsd.exe.
ОБНОВЛЕНИЕ: ПРОБЛЕМА РЕШЕНА. Я выполнил все настройки WCF (Action, ServiceKnownType ...) в контракте (интерфейсе) вместо того, чтобы делать это в рабочем процессе. Когда переместил в рабочий процесс, все заработало !!