URL-адреса разные.
http://localhost/AccountSvc/DataInquiry.asmx
против
/acctinqsvc/portfolioinquiry.asmx
Сначала решите эту проблему, так как если веб-сервер не может разрешить URL-адрес, на который вы пытаетесь выполнить POST, вы даже не начнете обрабатывать действия, описанные в вашем запросе.
Вам нужно всего лишь создать WebRequest для корневого URL-адреса ASMX, например: http://localhost/AccountSvc/DataInquiry.asmx
, и указать нужный метод / операцию в заголовке SOAPAction.
Значения заголовка SOAPAction отличаются.
http://localhost/AccountSvc/DataInquiry.asmx/ + methodName
против
Вы сможете определить правильный SOAPAction, перейдя по правильному URL-адресу ASMX и добавив ?wsdl
Под тегом <wsdl:operation>
должен быть тег <soap:operation>
, соответствующий операции, которую вы пытаетесь выполнить, которая выглядит как GetMyName
.
В теле запроса нет объявления XML, включающего ваш SOAP XML.
Вы указываете text/xml
в ContentType вашего HttpRequest, а не кодировку. Возможно, это значение по умолчанию us-ascii
, но невозможно сказать, не указали ли вы их!
XML, созданный SoapUI, включает в себя объявление XML, которое задает кодировку utf-8, которая также соответствует типу содержимого, предоставленному для HTTP-запроса: text/xml; charset=utf-8
Надеюсь, это поможет!