Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Json.net反序列化_Json_Json.net - Fatal编程技术网

使用Json.net反序列化

使用Json.net反序列化,json,json.net,Json,Json.net,请帮助反序列化 [ "newdatabase", "testdb" ] 使用json.net DbList DbList=JsonConvert.DeserializeObjectGetdbResponse.Content 不适用于上述json。它显示出错误 { "dblist": [ "newdatabase", "testdb" ] } 但是上面的json将毫无问题地工作第一个json表示一个字符串数组,因此需要

请帮助反序列化

[
    "newdatabase",
    "testdb"
]
使用json.net

DbList DbList=JsonConvert.DeserializeObjectGetdbResponse.Content

不适用于上述json。它显示出错误

{   "dblist":
     [
         "newdatabase",
         "testdb"
     ] }

但是上面的json将毫无问题地工作

第一个json表示一个字符串数组,因此需要反序列化到一个列表中。试着这样做:

List<string> dblist = 
             JsonConvert.DeserializeObject<List<string>>(GetdbResponse.Content);
第二个JSON表示包含字符串列表的对象。在这种情况下,您可以使用问题中的代码将其反序列化为如下类:

class DbList
{
    public List<string> dblist { get; set; }
}

[newdatabase,testdb]是一个数组。不是JSON。@SreekeshOkky它是有效的JSON数组。你自己试试。@BrianRogers在你的回答中你把它当作一个列表而不是一个JSON@SreekeshOkky术语JSON代表JavaScript对象表示法。它是一种数据交换格式,包括数组和对象。因此它是JSON,尽管它不是JSON对象。看到了吗?布莱恩罗杰斯,我明白了。我想说的是,他可能会把它看作是一个数组而不是JSON ObjtoNo问题;很高兴我能帮忙。