这是一个json文档,我想把它映射到c# poco类。我写了一些类,但它们没有工作。结果对象中得到null。什么好主意吗?
我使用Newtonsoft的json转换器。
{
"retrieval-response":{
"cdata":{
"identifier":"777400",
"document-count":"62"
},
"index":"10",
"count":"25"
}
}
c# map类
public class result
{
[JsonProperty("retrieval-response")]
public aResult res { get; set; }
public int index { get; set; }
public int count { get; set; }
}
public class aResult
{
public cdata data { get; set; }
}
public class cdata
{
[JsonProperty("identifier")]
public string identif { get; set; }
[JsonProperty("document-count")]
public string count { get; set; }
}
你的模型是错误的。试试这个:
public class Wrapper
{
[JsonProperty("retrieval-response")]
public Result Result { get; set; }
}
public class Result
{
[JsonProperty("cdata")]
public Data Data { get; set; }
public int Index { get; set; }
public int Count { get; set; }
}
public class Data
{
[JsonProperty("identifier")]
public string Identifier { get; set; }
[JsonProperty("document-count")]
public string Count { get; set; }
}
然后你可以用下面的行来反序列化它:
var myResult = JsonConvert.DeserializeObject<Wrapper>(json);
请注意,我也用pascal写了你的属性和类名。这些是来自Microsoft的命名约定。