[英]Json.net serializing a flat object to key-value pair array
我正在嘗試將僅包含字符串屬性的平面對象序列化為JSON。 我得到的是:
{
"Inputs": {
"prop1": "value1",
"prop2": "value2"
}
}
我需要的是:
{
"Inputs": [{
"key": "prop1",
"value": "value1"
},
{
"key": "prop2",
"value": "value2"
}
]
}
我的第一個想法是編寫一個自定義轉換器,該轉換器首先將對象轉換為字典(基於https://stackoverflow.com/a/4944547/9806449 ),然后迭代鍵以將其構建為所需的格式,但是感覺必須有一個更簡單的解決方案讓我望而卻步。
有任何想法嗎? 謝謝!
如果我理解正確。 這是基本的序列化。 您想使用鍵,值對序列化對象。
public class Obj
{
public Obj(string key, string value)
{
Key = key;
Value = value;
}
public string Key { get; set; }
public string Value { get; set; }
}
主要的,
static void Main(string[] args)
{
var response = new Dictionary<string, List<Obj>>();
var inputObjs = new List<Obj>();
inputObjs.Add(new Obj("prop1", "value1"));
inputObjs.Add(new Obj("prop2", "value2"));
response.Add("Inputs", inputObjs);
var serializedObj = JsonConvert.SerializeObject(response);
Console.ReadKey();
}
我使用Newtonsoft序列化對象
你會得到這個結果,
{
"Inputs": [{
"key": "prop1",
"value": "value1"
},
{
"key": "prop2",
"value": "value2"
}
]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.