2020-12-14 16:52:43,911 DEBUG Newtonsoft.Json.JsonSerializationException: Error converting value "[{"id":1,"aname":"本机域配置","aip":"61.162.59.59","aport":3306,"adb":"cmcp10","auid":"root","apwd":"AYB9dnmtNcY=","amain":2,"astate":2}]" to type 'System.Collections.Generic.List1[Model_v1.dial_area]'. Path '', line 1, position 162. ---> System.ArgumentException: Could not cast or convert from System.String to System.Collections.Generic.List
1[Model_v1.dial_area].
在 Newtonsoft.Json.Utilities.ConvertUtils.EnsureTypeAssignable(Object value, Type initialType, Type targetType)
在 Newtonsoft.Json.Utilities.ConvertUtils.ConvertOrCast(Object initialValue, CultureInfo culture, Type targetType)
在 Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)
--- 内部异常堆栈跟踪的结尾 ---
在 Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)
在 Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
在 Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
在 Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
在 Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
在 Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
在 Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value)
以上为错误日志,但确认要解析的字符串应该是没问题,这是什么原因呢.而且方法一直在用,用着用着就出错了
c# 代码
List<dial_area> m_lDialArea1 = JsonConvert.DeserializeObject<List<dial_area>>(Redis2.Instance.Get<string>(Redis2.m_sDialAreaName));
[{
"id": 1,
"aname": "本机域配置",
"aip": "61.162.59.59",
"aport": 3306,
"adb": "cmcp10",
"auid": "root",
"apwd": "AYB9dnmtNcY=",
"amain": 2,
"astate": 2
}]
你这是一个数组,,里面有个json字符串,怎么转成List<T>呢,用jsonArray转
;
这个是我亲测有效的。