Отправителя сообщения нельзя изменить, но моя служба может (и я должен это сделать). догадайтесь):
Я решил создать веб-службу ASP.NET ASMX, потому что это казалось наиболее простым решением для обработки сообщений SOAP;
С учетом вышесказанного я столкнулся с конкретной проблемой во время моей разработки и мои исследования не могли помочь мне решить эту проблему (учтите, что я начал свою карьеру разработчика не более 5 лет назад, поэтому моих знаний о веб-сервисах SOAP в dotnet недостаточно):
Объект, который я получу, будет иметь следующую структуру:
Код: Выделить всё
...
Код: Выделить всё
namespace ASMXWebService
{
///
/// Summary description for ProxySOAP
///
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class ASMXWebService : WebService
{
[WebMethod]
public string EndpointRelatedFunction(object data)
{
return "Hello World";
}
}
}
Код: Выделить всё
Код: Выделить всё
soap:VersionMismatchSystem.Web.Services.Protocols.SoapException: Possible SOAP version mismatch:
Envelope namespace was
unexpected. Expecting http://schemas.xmlsoap.org/soap/envelope/. at
System.Web.Services.Protocols.SoapServerProtocol.CheckHelperVersion() at
System.Web.Services.Protocols.SoapServerProtocol.Initialize() at
System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context,
HttpRequest request, HttpResponse response, Boolean& abortProcessing)
'public class ASMXWebService: WebService'
но я понятия не имею, что это будет за решение.
Решение этой проблемы может решить другие мои проблемы (я думаю, это будут мои следующие проблемы), а именно:
- Как определить эти пространства имен с настраиваемыми префиксами? (например, «:a» или «:ns1») в коде asmx?
- Каким может быть значение xmlns:ns1 в таком странном формате? (Я ожидаю, что в качестве значения пространства имен будут только пути).
Подробнее здесь: https://stackoverflow.com/questions/793 ... ace-prefix