将JsonObject映射到json类

时间:2018-06-28 11:15:02

标签: c# json

我正在尝试从excel填充类对象。我在反序列化的json中收到了值,但我不想获取列表 因为在处理程序类中有一个类型为policy的函数,我该如何将PolicyNew映射到没有List的类对象。

var json = JsonConvert.SerializeObject(query);                    
var policynew = JsonConvert.DeserializeObject<List<PolicyNew>>(json);
Policy policy = Handler.GeneratePolicy(policynew);

//Handler.cs
Handler.GeneratePolicy(PolicyNew policynew)
{
}

1 个答案:

答案 0 :(得分:0)

如果您的jsonstring包含数组,则必须反序列化为某种列表/数组。如果知道,您只需要该列表中的单个元素(或者您知道该列表仅包含一个元素),就可以使用结果列表中的第一个元素。

var policynew = JsonConvert.DeserializeObject<List<PolicyNew>>(json).FirstOrDefault();

如果您可以控制json字符串的生成,则可以更改序列化,而不是创建数组[{"p1": 3, ...}]而是创建单个对象{"p1": 3, ...}

相关问题