我能够获得一个JSON对象,其中包含一系列调查,每个调查都有一组属性。我有一个为调查定义的类,我根据获得的JSON对象定义所有调查属性。我在定义question.id属性时遇到错误。请建议我解决这个问题的最佳方法。
JSON数据:
"surveys":
{
"id": 20128672,
"trueFalse": false,
"question": "Any accidents on site today?",
"question.id": 1097329,
"question.tag": 0,
"images": [],
"videos": []
},
调查班:
public class survey
{
public string id { get; set; }
public Nullable<bool> trueFalse { get; set; }
public string question { get; set; }
public string question.id { get; set; } //error in writing the question id attribute
public string desc { get; set; }
//public bool trueFalse { get; set; }
public string FormattedAnswer
{
get
{
if (trueFalse == null) return "NA";
return trueFalse == true ? "YES" : "NO";
}
}
}
答案 0 :(得分:1)
我不确定你在这里使用的json lib是什么,但是假设它是json.net你可以用一个简单的注释来解决这个问题,将json字段名称映射到C#属性,你在C#中给出该属性的名称是无效的,这就是你得到错误的原因,没有字段名称的句号。
[JsonProperty("question.id")]
public int id { get; set; }
另外,我修改了你的类型,因为它也是错误的,json值是int,而不是字符串。如果你没有使用json.net,我相信你会在你正在使用的lib中找到类似的功能,谷歌json注释或者包含这些包名称的东西,以找到合适的文档。