Почему я получаю ошибку пространства имен ответа Soap - PullRequest
2 голосов
/ 18 октября 2019

Я использую веб-сервис SOAP, созданный внешней стороной. Использование .net core 3.0, когда я сгенерировал мыльный клиент с помощью утилиты svc (добавив подключенную ссылку), не позволил бы мне отправлять правильные сообщения.

Итак, я создал клиента следующим образом:

   [ServiceContract(Namespace = "SomeNameSpace")]
   public interface IUMService
    {
        [OperationContract(Action = "SendMessage", Name = "SendMessageRequest", ReplyAction = "SendMessageResponse",  AsyncPattern = true)]
        Task<ReturnObject> SendMessageRequestAsync(Object1 obj1, Obj2 obj2);
    }

Сначала я просто получил бы нулевой ответ, поэтому я изменил свой тип возвращаемого значения на stream, который дал мне следующую ошибку:

Запустить элемент 'SendMessageRequestResponse' из пространства имен 'urn: be: healthconnect: unifiedmessagingservice: 1_0: common' ожидается. Найден элемент 'SendMessageResponse' из пространства имен 'urn: be: healthconnect: unifiedmessagingservice: 1_0: common'. Строка 1, позиция 262.

С моим базовым пониманием клиентов Soap об этом должен позаботиться атрибут ReplyAction, кроме случаев, когда это не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...