Настройте ответ SOAP в веб-сервисе ASMX

Это ответ после вызова моего веб-сервиса

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><unregisterResponse xmlns="ns2=http://gate.com"><unregisterResult><returncode>1</returncode><returndesc>SUCCESS</returndesc></unregisterResult></unregisterResponse></soap:Body></soap:Envelope>

Во-первых, я хочу удалить xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" в soap:Envelope

Во-вторых, я хочу изменить unregisterResponse в ns2:return с этим пространством имен

В-третьих, я хочу изменить soap:Envelop а также soap:Body в S:Envelop а также S:Body

Наконец они выглядят так:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:unregisterResponse xmlns:ns2="http://gate.com"><return><returncode>1</returncode><returndesc>SUCCESS</returndesc></return></unregisterResponse></S:Body></S:Envelope>

Что я пробовал:

  • Я пытался поставить [XmlRoot("return")] поверх моего класса возврата, но в моем сервисе есть несколько классов возврата, я могу назвать только 1 класс return

  • Я старался [XmlRoot("return", Namespace = "http://gate.com/unregister")] для исправления ошибки выше, но <return> становится <return xmlns="http://gate.com/unregister"> с xmlns, что наш оператор не позволяет

Пожалуйста, помогите мне решить эту проблему, спасибо.

0 ответов

Другие вопросы по тегам