Выполнение диалогового потока с помощью WCF REST Post Method не получает данные - PullRequest
0 голосов
/ 23 сентября 2019

Я создал службу WCF следующим образом:

[OperationContract]
        [WebInvoke(UriTemplate = "/GetOrder", ResponseFormat = WebMessageFormat.Json, Method = "POST")]
        string GetOrder(BotInterface order);

GetOrder уже создан, и сейчас он просто возвращает строку, я просто хотел протестировать запрос.Если я вызвал намерение с выполнением, настроил мой локальный код, он был выполнен, но объект заказа всегда нулевой.Если я использую request.bin, там есть данные post json, и если я вызываю службу с использованием soapui, это просто диалог.

какие-нибудь подсказки?

Ответы [ 2 ]

1 голос
/ 23 сентября 2019

По умолчанию RequestFormat является форматом данных XML.Мы должны указать тело запроса в формате XML.

<Product xmlns="http://schemas.datacontract.org/2004/07/RestML.Data">
  <Id>2147483647</Id>
  <Name>String content</Name>
</Product>

Вот пример.
не может получить значения запроса XML xml в wcf c #

Ниже приведено подробное описание формата данных при публикации параметра.
Получите нулевой объект, используя JSON в службе WCF
Не стесняйтесь сообщить мне, если проблема все еще существует.

0 голосов
/ 24 сентября 2019

Спасибо за вашу помощь, Авраам!Решение было таким: я попробовал свой сервис, используя запрос json от SOAPUI, и работал отлично.Я обнаружил, что проблема заключалась в отображении запроса из моего приложения, когда я преобразовал полезную нагрузку json в объект C #, был элемент, который был повторен как элемент и тип, и мне пришлось изменить имя, из-за чего публикация стала неудачной.Вот почему он всегда был нулевым.

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