无法反序列化当前 JSON 数组(例如 [1,2,3])

本文关键字:例如 反序列化 数组 JSON | 更新日期: 2023-09-27 17:55:20

我有这个错误:无法将当前 JSON 数组(例如 [1,2,3])反序列化为类型"authObject",因为该类型需要 JSON 对象(例如 {"name":"value"})才能正确反序列化。

要修复此错误,请将 JSON 更改为 JSON 对象(例如 {"name":"value"}),或者将反序列化类型更改为数组或实现集合接口的类型(例如 ICollection、IList),如可以从 JSON 数组反序列化的列表。还可以将 JsonArrayAttribute 添加到类型中,以强制它从 JSON 数组反序列化。

我的反序列化代码

authObject a = JsonConvert.DeserializeObject<authObject>(result);

我的类与 JSON 对象描述:

public class authObject
{
        public string auth { get; set; }
        public string type { get; set; }
        public string sess_id { get; set; }
}

当然我的json:

[{"auth":"49","type":"P","sess_id":"89a0d5gle5vspo0ed3j8tbdos4"}]

我做错了什么?谢谢

无法反序列化当前 JSON 数组(例如 [1,2,3])

它需要一个数组列表,请尝试

List<authObject>  list = JsonConvert.DeserializeObject<List<authObject>>(result);