比方說,我有兩個類,即個人和項目:如何去/序列化嵌套對象與Json.Net
class Person {
public int Id { get; set; }
public string Name { get; set; }
}
class Project {
public int Id { get; set; }
public string Name { get; set; }
public List<Person> Workers { get; set; }
}
我要存儲在名爲person.json單獨的文件數據的人及項目數據和project.json。
要序列我用下面的語句中的數據:
JsonConvert.SerializeObject(Collection, Formatting.None, new JsonSerializerSettings()
{
NullValueHandling = NullValueHandling.Ignore,
TypeNameHandling = TypeNameHandling.All
};)
其中collection是List<People>
。
反序列化我用下面的語句中的人數據:
JsonConvert.DeserializeObject<List<T>>(json, , new JsonSerializerSettings()
{
NullValueHandling = NullValueHandling.Ignore,
TypeNameHandling = TypeNameHandling.All
};)
其中JSON是從person.json字符串JSON數據。 我在列表框中顯示List<Person>
。
現在我不知道應該如何存儲項目數據,以便每次編輯人員對象並最終將其保存到person.json文件時,項目文件中List<Person>
對象中的相應人員對象也更新。
我甚至不確定json是否是一個很好的方法來做到這一點,也許我應該嘗試一個關係數據庫。
請讓我知道如果我沒有很好地解釋我的情況。我真的需要用json來完成這項工作,併爲我的問題尋找解決方案。任何幫助表示讚賞。
您需要用新內容重寫JSON文件。是的,這聽起來像一個關係數據庫更合適。 JSON和XML是* transport *格式,它們不是理想的*存儲*格式。 –
@ LasseV.Karlsen - 大量系統使用JSON作爲存儲格式。無論格式如何,他所要求的都需要數據的管理層。 –