我是一个简单的json,如:
{
"values": [
{
"key1": "value1",
"key2": "value2",
"key3": "value3"
},
{
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
]
}
我的对象结构是这样的:
[DataMember]
public List<KeyValues> values { get; set; }
在KeyValues内部,我只有一个词典:
[DataMember]
public Dictionary<string, string> values { get; set; }
列表中有2个对象但字典仍然为空。
如何将数组中的对象解析为我的字典?
提前致谢。
编辑:
[Route("test")]
[HttpPost]
public HttpResponseMessage testPost([FromBody] TestObject test)
{
...
}
答案 0 :(得分:1)
它不是你传入的词典。它是一个对象数组。我将Json改为
{
"values": [
{
key: "key1", value: "value1",
key: "key2", value:"value2",
key: "key3", value:"value3"
},
{
key: "key1", value:"value1",
key: "key2", value:"value2",
key: "key3", value:"value3"
}
]
}
}
然后将映射到以下类结构:
public class Value
{
public string key { get; set; }
public string value { get; set; }
}
public class RootObject
{
public List<Value> values { get; set; }
}
这可能足以让您使用。如果你真的想要一本字典,你可以考虑创建一个自定义的Json转换器(例如继承JsonConverter)