Я использую RestSharp для обработки отправки электронной почты, и мне нужно иметь возможность проверить ответ, чтобы убедиться, что все прошло хорошо.Как разобрать ответ RestSharp в классе?
Я ничего не знаю о JSON, но то, что я видел из моего поиска, заставило меня поверить, что вызов client.Execute<T>(Foo)
должен привести к тому, что я получу объект типа T
со свойствами, заполненными результатом выполнения запроса ...
Это не тот случай.
В том случае, когда я намеренно провалить POST я получаю от этого свойства response.Content:
{"error":3,"message":"Wrong credentials specified"}
Когда я отправить запрос с соответствующими учетными данными, response.Content выглядит следующим образом:
{"message":"OK"}
, которые приводят меня к мысли создать класс, как это должно быть все, что мне нужно:
public class RestMessage {
string error { get; set; }
string message { get; set; }
}
, но когда я называю
IRestResponse<RestMessage> Foo = Bar.Execute<RestMessage>(Baz);
Foo.Data
составляет объект типа RestMessage
, но в любом случае, результат всегда что error = null
(что имеет смысл в последнем случае, но не в первом) и message = null
.
Очевидно, что это не так просто, как каждый пример, который я прочитал, делает это таким.
Я установил RestSharp из NuGet в VS2015 Community, используя их удивительный NuGet ... thingy, поэтому у меня самая последняя версия.
Может кто-нибудь объяснить, как я могу выполнить то, что я пытаюсь сделать для меня, как будто я все еще прорезываю зубы?
Это должно быть, тх t правильный способ его использования, проверьте содержимое ответа, когда «сообщение» равно null из RestResponse.Content, должна быть небольшая разница в вашем классе против объекта json – Gusman
Ehmm, не уверен, что это может быть так, но попробуйте сделать свойства общедоступными ... – Gusman
@ Гусман О, если это произойдет, я пойду спать -.-; – Will