RestSharp не десериализует коллекцию детей должным образом, если не список строк - PullRequest
0 голосов
/ 21 марта 2019

У меня есть следующий json из службы

{
  "owner": {

    "resources": [
      {
        "name": "Resource 1",
        "url": "http://resource.com"
      }
    ],
    "categories": [
      "Software Update"
    ]
  }
  ...
}

Мои модели для десериализации этого объекта

 public class EventWithOwnerModel
 {
     public OwnerModel Owner { get; set; }
     ...
 }

 public class OwnerModel
 {

    ...
    public IEnumerable<ResourceModel> Resources { get; set; }
    public IEnumerable<string> Categories { get; set; }

}

public class ResourceModel
{
    public string Name { get; }
    public string Url { get; }
}

При десериализации все свойства владельца заполнены правильновключая Categories (список строк), но список Resources заполняется, однако свойства каждого ресурса фактически null вместо name и url

Перезвоните

 var restClient = new RestClient($"http://{gateway.Value.Address}");
 var eventRequest = new RestRequest($"/fullevent/1", Method.GET, DataFormat.Json);

 var eventWithOwnerModel = await restClient.GetAsync<EventWithOwnerModel>(eventRequest)

РЕДАКТИРОВАТЬ:

Я переключился на raw httpClient и с помощью JsonConvert.DeserializeObject <> NewtonSoft проблема все еще существует, так что это не должнок чему-либо с самим RestSharp

решено Кажется, я не обращал внимания на то, что у меня был только приток;для модели ресурса

...