c# - RestSharp 反序列化为 List<MyClass>

标签 c# .net json rest restsharp

我使用 RestSharp 从某个页面获取 json。响应是这样的:

{
    "cars": [
        {
            "name": "car1",
            "size": 10,
            "color": "black"
        },
        {
            "name": "car2",
            "size": 20,
            "color": "white"
        }
    ]
}

我有一辆车有这个类:

public class Car
    {
      public string Name { get; set; }
      public int Size { get; set; }
      public string Color { get; set; }
    }

如何将此响应映射到汽车列表?

如果json中没有"cars":[,这很简单,但现在我需要这样做:

private class Cars
    {
      public List<Car> Cars { get; set; }
    }

    ...

    IRestResponse<Cars> response = client.Execute<Cars>(request);
    ...
    ...response.Data.Cars...

但我觉得 Cars 类没用,我想做这样的事情:

IRestResponse<List<Car>> response = client.Execute<List<Car>>(request);
...
...response.Data...

编辑:

这是为了请求创建:

RestClient client = new RestClient(http...));
        RestRequest request = new RestRequest();

最佳答案

假设只有一个“汽车”数组,下面的代码将完成这项工作。

var response = client.Execute<Dictionary<string,List<Car>>>(request);

//You can access cars this way.
var data = response.Data["cars"];

关于c# - RestSharp 反序列化为 List<MyClass>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51873728/

相关文章:

.net - 在 C# 中使用 AMO 获取给定用户的完整权限列表的最佳方法是什么

.net - 如何强制控件验证自身?

c# - 在运行时将更改应用到主窗体 Form.Icon

ruby-on-rails - 响应多个 JSON 渲染。 ( ruby /rails )

c# - jquery Ajax 调用导致 Firefox 中的未定义错误

c# - GridCell 中的 NumericUpDown - WPF

javascript - REST api 支持的 JavaScript 表

javascript - 来自 api 响应的嵌套值的解析结果

c# - 如何让我的代码在崩溃前创建转储文件?

c# - Azure 函数上下文