ASP.NET ASMX Webservice пользовательский префикс пространства имен; Создание сервиса DotNet, которая общается с услугамиC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 ASP.NET ASMX Webservice пользовательский префикс пространства имен; Создание сервиса DotNet, которая общается с услугами

Сообщение Anonymous »

Мне нужно создать услугу, способную получать сообщения мыла и перенаправить их на микросервис. Угадайте):
Я решил построить веб -сервис ASP.NET ASMX, потому что это показалось наиболее простым решением для обработки сообщений SOAP; < /p>
С учетом сказанного я сталкиваюсь с конкретной проблемой Во время моего развития и моих исследований не могло помочь мне решить его (пожалуйста, подумайте, что я начал свою карьеру в качестве разработчика не более 5 лет назад, поэтому мои знания о мыльных веб -сервисах в Dotnet довольно недостаточны:
Объект, который я получу PrettyPrint-Override ">

Код: Выделить всё




...
< /code>
Веб -сервис, который я написал до сих пор, ничем не отличается от того, что VisualStudio генерирует при добавлении нового файла ASMX (я сообщу об полноте): < /p>
< H6> asmxwebservice.asmx.cs < /h6>
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";
}
}
}
< /code>
Эта часть кода генерирует конечную точку, которая может получать сообщения XMLS в качестве той, которая следует за следующей: < /p>








< /code>
Моя проблема заключается в том, что когда я пытаюсь отправить объект, который должен получить эту службу (я использую почтальон), я получаю «Ошибка внутреннего сервера 500» со следующей ошибкой Сообщение: < /p>
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)
< /code>
Я думаю, я должен добавить что -то в верхней части

public class ASMXWebService : WebService< /code>

Но я понятия не имею, что это будет. < /p>
Решение этой проблемы может решить мои другие проблемы (я предполагаю Проблемы) и это могут быть: < /p>

 Как я могу определить эти пользовательские пространства имен префикса (например, ': a' или ': ns1') в коде ASMX? < /li>
 Какое значение может быть значением для XMLN: NS1 с этим странным форматом? (Я ожидаю только пути как значение пространства имен). < /Li>
< /ul>
Я открыт, чтобы переосмыслить всю структуру моего сервиса (все, кроме необходимости использовать WCF, Если это лучший способ, расскажите мне почему и покажите, как пожалуйста). < /p>
 Обновление: < /strong>

Очевидно, до тех пор, пока у URI пространства имен. Достижн, веб -сервис способен правильно разобрать XML без необходимости добавлять что -либо в файл asmxwebservice.asmx.cs;

, так что ошибка, вероятно, была связана с тем фактом, что в сети я не мог. Добежно достичь URI первого пространства имен.

Проблема, с которой я сталкиваюсь сейчас, связана с пространством имен «NS1», это не кажется URI, поэтому я связался с обслуживающими услугами отправителя, чтобы получить Infos на Что бы это ни было. был в моем файле asmxwebservice.asmx.cs; Изменение "http://tempuri.org/" на NS1 -пространство имен все еще дает ошибку, потому что веб -сервис не способен десериализовать тело XML (ожидает


Подробнее здесь: [url]https://stackoverflow.com/questions/79373800/asp-net-asmx-webservice-custom-namespace-prefix-building-a-dotnet-service-that[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»