使用name参数反序列化JSON列表

时间:2017-10-19 09:08:35

标签: c# json deserialization

我能够以下面的格式反序列化列表

map.data.setStyle(function(feature) {
var color;

    if (feature.getProperty('isColorful')) {
      feature.setProperty('isColorful', false);
      color = '#009900';
    }else{
      feature.setProperty('isColorful', true);
      color: 'grey';
    }

使用

[{"id":5,"somevalue":"x","somevalue":"y"},{},{} .....]

但是,我无法反序列化名为ex:

的列表
var response = MyJsonResponse;
response.Data = JsonConvert.DeserializeObject<List<TDecode>>(response.ResponseResult);

你会如何反序列化这样的对象?

1 个答案:

答案 0 :(得分:1)

您无法使用,因为您必须创建另一个包装列表的对象:

public RootObj
{
    public List<TDecode> results { get; set; }
}

然后反序列化

var result = JsonConvert.DeserializeObject<RootObj>(response.ResponseResult);

另一种选择是将dynamic反序列化,然后将result.results设为List<TDecode>