ТЛ; др;
Отредактировал сгенерированный прокси-класс для наследования от Microsoft.Web.Services3.WebServicesClientProtocol
**.
Я сталкивался с этим вопросом при устранении этой ошибки, поэтому подумал, что смогу помочь следующему человеку, который может прийти сюда, хотя и не уверен, что он ответит на поставленный вопрос. Я столкнулся с этой ошибкой, когда в какой-то момент мне пришлось взять на себя существующее решение, использующее кодирование WSE и MTOM. Это был клиент Windows, вызывающий веб-сервис.
Кстати, клиент вызывал веб-сервис, где он выдавал эту ошибку.
Что-то, что помогло мне решить эту ошибку, заключалось в проверке прокси-класса веб-службы, который, по-видимому, генерируется по умолчанию для наследования от System.Web.Services.Protocols.SoapHttpClientProtocol
.
По сути это означало, что он фактически не использовал WSE3.
В любом случае Я вручную отредактировал прокси и изменил его на наследование от Microsoft.Web.Services3.WebServicesClientProtocol
.
Кстати, чтобы увидеть сгенерированный прокси-класс в VS, щелкните веб-ссылку, а затем нажмите кнопку панели инструментов «Показать все файлы». Reference.cs - место радости!
Надеюсь, это поможет.