DynamicJson不反序列化“非对象”数组.正确的类型
本文关键字:数组 类型 非对象 反序列化 对象 DynamicJson | 更新日期: 2023-09-27 18:18:32
DynamicJson.Deserialize("{'"arr'": [{'"key1'":1}, {'"key2'":2}]}")
工作正常,DynamicJson.Deserialize("{'"arr'": [1, 2]}")
工作不正常。
在ServiceStack中将非对象类型的数组正确反序列化为动态数组的正确方法是什么?
推荐的方法是创建一个与你想要反序列化的JSON形状相匹配的POCO,例如:
var json = "{'"arr'": [1, 2]}";
public class Poco
{
public List<string> Arr { get; set; }
}
var dto = json.FromJson<Poco>();
否则你可以使用动态JSON API来动态解析JSON,例如:
string[] arr = JsonObject.Parse(json)
.Get<string[]>("arr");