Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.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
C# 如何将JSON响应解析到字典中?_C#_Wcf_Json_Json.net - Fatal编程技术网

C# 如何将JSON响应解析到字典中?

C# 如何将JSON响应解析到字典中?,c#,wcf,json,json.net,C#,Wcf,Json,Json.net,我的WCF服务返回了一个JSON响应(HTTPWebResponse)。看起来是这样的: { "New SessionResult": [ { "Key": "Token", "Value": "token_value" } ] } 我正在使用JSON.NET(http://james.newtonking.com)我不知道如何将此响应反序列化到字典中。我尝试了几种方法,但每种方法都用不同的措辞表示

我的WCF服务返回了一个JSON响应(HTTPWebResponse)。看起来是这样的:

{
    "New SessionResult": [
        {
            "Key": "Token",
            "Value": "token_value"
        }
    ]
}
我正在使用JSON.NET(http://james.newtonking.com)我不知道如何将此响应反序列化到
字典中。
我尝试了几种方法,但每种方法都用不同的措辞表示“无法将JSON转换为sting”。目前我尝试了以下方法:

Dictionary<string, string> values = JsonConvert.DeserializeObject<Dictionary<string, string>>(reader.ReadToEnd());
Dictionary values=JsonConvert.DeserializeObject(reader.ReadToEnd());
如果可能的话,我可以直接将某些值放入字符串中。 示例)JSON响应具有键、值对(Token、Token\u value),我想获取键“Token”的值,并将其放在本地字符串“string Token”中


任何人都可以帮忙,谢谢。

你应该试试Newtonsoft.Json插件:

在你的情况下,你会得到如下结果:

 JObject json = JObject.Parse(jsonResponseData);
 ...
 mydic.Add(json["New SessionResult"]["Key"], json["New SessionResult"]["Value"]
为什么要更改代码

只需从声明中的“string,string”->“string,dynamic”转换即可

Dictionary<string, string> values = JsonConvert.DeserializeObject<Dictionary<string, string>>(reader.ReadToEnd());
Dictionary values=JsonConvert.DeserializeObject(reader.ReadToEnd());

非常感谢!工作得很好。