У меня есть клиент WCF, который обменивается данными с неизвестной реализацией сервера, над которой я не могу повлиять. Этот клиент работает нормально, ему просто не нравятся, казалось бы, неправильно сформированные сообщения об ошибках SOAP. Сообщения, которые я получаю, выглядят так:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <soap:Fault> <soap:faultcode>soap:Client</soap:faultcode> <soap:faultstring>...</soap:faultstring> <soap:detail>...</soap:detail> </soap:Fault> </soap:Body> </soap:Envelope>
Я считаю, что в соответствии со схемой мыла дочерние элементы не должны быть квалифицированы и должны выглядеть так:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header>...</soap:Header> <soap:Body> <soap:Fault> <faultcode>soap:Client</faultcode> <faultstring>...</faultstring> <detail>...</detail> </soap:Fault> </soap:Body> </soap:Envelope>
Есть ли что-то, что я могу настроить или переопределить, чтобы я мог получать сообщения, которые поступают в последнем формате, чтобы я мог использовать сообщения об ошибках вместо исключений xml?