Похоже, что .NET 3.5 применяет схему SOAP 1.2 при работе с веб-службами, даже если служба указывает SOAP 1.1 в схеме для конверта SOAP. Существует ли параметр для ссылки на службу для распознавания SOAP 1.1?
РЕДАКТИРОВАТЬ: Проблема заключается в форматировании ошибок SOAP, возвращаемых из веб-службы клиенту .NET 3.5. В SOAP 1.1 допускается, чтобы первый подэлемент ошибки был <faultactor>
. В SOAP 1.2 это больше не действует - первый подэлемент должен быть <faultcode>
. Проблема, с которой я столкнулся, заключалась в том, что когда веб-служба SOAP 1.1 возвращала ошибку SOAP, я получал исключение в .NET с жалобой на то, что элемент <faultcode>
ожидался, но был получен <faultactor>
. Я думаю, что мы сузили проблему до проблемы управления версиями SOAP; сейчас мы тестируем предложенное решение.