DynamicJson 没有正确反序列化 "non-object" 类型的数组
DynamicJson does not deserialize arrays of "non-object" types correctly
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>();
否则你可以使用Dynamic JSON API动态解析JSON,例如:
string[] arr = JsonObject.Parse(json)
.Get<string[]>("arr");
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>();
否则你可以使用Dynamic JSON API动态解析JSON,例如:
string[] arr = JsonObject.Parse(json)
.Get<string[]>("arr");