我在返回api结果时遇到困难,我有一个像
这样的课程public partial class Sample
{
[JsonProperty("classificator")]
public List<Classificator> Classificator { get; set; }
}
public partial class Classificator
{
[JsonProperty("Value")]
public string Value { get; set; }
[JsonProperty("Description")]
public string Description { get; set; }
}
让我们说 GetJson 方法从数据库中检索我们的数据,有2条记录和数据如
- 价值 - 说明
1- A - AXA
2- B - BXA
response = GetJson(); // this method gets data from db
return Content(HttpStatusCode.OK, response);
当我退回时,它就像
{
"classificator": [{
"Value": "A",
"Description": "AXA"
}, {
"Value": "B",
"Description": "BXA"
}
]
}
但我希望看到,我希望看到相似的结果;
{
"classificator": [{
"A": "AXA"
}, {
"B" : "BXA"
}
]
}
我想问你,也许有人知道一个好的做法或文件(教程)。
我通过使用 Dictionary&lt;来解决它字符串,型号&gt;
但我需要返回一个巨大的嵌套字段,我无法为所有不同的节点实现此解决方案。
答案 0 :(得分:0)
我通过使用 Dictionary&lt;字符串,对象&gt;
我在对象值中放置了2个嵌套对象。在我的情况下,它看起来很复杂,我重构并尝试通过可读的字典层次结构。
基本上这个例子就像下面这样,
Dictionary<string, object> fooDict = new Dictionary<string, object>();
fooDict.Add("A", "AXA"); // in my case I put 2 nested object to value field
fooDict.Add("B", "BXA");
var serializedObject = JsonConvert.SerializeObject(fooDict);
using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\xxx\result.txt", true))
{
file.WriteLine(serializedObject);
}