【问题标题】:Deserialize KeyValuePair<string, string> Json.Net反序列化 KeyValuePair<string, string> Json.Net
【发布时间】:2012-11-08 20:02:18
【问题描述】:

我需要像这样反序列化string

{ “例子”: { “id”:“12345”, “名称”:“blabla” } }

KeyValuePair&lt;string, string&gt; 或类似的东西。

我试过了:

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

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

结果是一个空的KeyValuePair&lt;string, string&gt;

有没有办法解决这个问题?

【问题讨论】:

标签: c# json.net deserialization


【解决方案1】:
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);

var dict = jobj["example"].ToObject<Dictionary<string, string>>();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多