要求
我正在尝试构建一个将json字符串作为输入的函数。并输出对象列表。 json字符串的格式与此类似:
.ToString()
我的搜索
有很多解决方案可以将json数组反序列化为对象列表,但是该数组从字符串的开头开始。即没有\“客户列表\”:部分
如果json字符串中有\“ custlist \”:部分,则这些解决方案将中断。
我的代码
这是我在C#中的代码。它正在工作,但是我必须使用正则表达式来匹配输入字符串。似乎过于复杂。必须有一个更简单的方法。谁知道,请指教
.ToString()
答案 0 :(得分:4)
我真的不知道是什么问题,但本质上是:
GET
答案 1 :(得分:3)
它看起来像是存储在JSON字符串中的JSON对象。
因此首先将其反序列化为字符串,然后反序列化为正确类型的列表。您可以同时使用JsonConvert.DeserializeObject
:
更新:我刚刚意识到JSON中的数组是JSON对象的属性,在此不做说明。我现在没有时间解决此问题,但希望您能明白。
public List<T> Json2List<T>(string s)
{
string json_object = JsonConvert.DeserializeObject<string>(s);
return JsonConvert.DeserializeObject<List<T>>(json_object);
}
但是我也将研究为什么要获取这样的数据进行双序列化。