反序列化KeyValuePair <string,string> Json.Net

Tor*_*enJ 6 c# json.net deserialization

我需要string像这样反序列化

{
  "example": {
    "id": "12345",
    "name": "blabla"
  }
}

变成一个KeyValuePair<string, string>类似的东西.

我试过了:

var pair = JsonConvert.DeserializeObject<KeyValuePair<string, string>>(d["example"].ToString()); 
Run Code Online (Sandbox Code Playgroud)

(d["example"]返回如上所示的json字符串)

结果是空的KeyValuePair<string, string>.

有什么方法可以解决这个问题吗?

L.B*_*L.B 6

string json = 
     @"{
          ""example"": {
          ""id"": ""12345"",
          ""name"": ""blabla""
          }
        }";

var jobj =  JObject.Parse(json);
var dict = jobj["example"]
            .Children().Cast<JProperty>()
            .ToDictionary(x => x.Name, x => (string)x.Value);
Run Code Online (Sandbox Code Playgroud)

要么

var dict = jobj["example"].ToObject<Dictionary<string, string>>();
Run Code Online (Sandbox Code Playgroud)