0
我想反序列化一個json對象到一個c#類中,並且有一個完全填充的默認對象,即使我的JSON缺少這些信息。我試過JSON.Net反序列化填充缺少的屬性
- 註釋與[默認值]
- 創建構造函數的類
- 反序列化與設置對象
設置對象:
new JsonSerializerSettings {
DefaultValueHandling = DefaultValueHandling.Populate
NulValueHandling = NullValueHandling.Include
ObjectCreationHandling = ObjectCreationHandling.Replace
}
考慮這些C#類
public class Root{
public SpecialProperty name {get;set;}
public SpecialProperty surname {get;set;}
}
public class SpecialProperty {
string type {get;set;}
string value {get;set;}
}
考慮這個JSON
"Root" : {
"name" : {
"type" : "string",
"value": "MyFirstname"
}
}
我如何反序列化JSON這與序列化到一個新的對象現有的數據和缺少的屬性,在這種情況下一個對象,設置爲string.empty
?
謝謝,這就是我一起去的。創建contstructors並在任何地方初始化它們。儘管我仍然認爲它應該能夠通過註釋和'JsonSerializerSettings'對象來初始化整個事物,但也許在這個故事中'Serializer'這個詞是最重要的,因爲我試圖反序列化。如果有人發現純粹的JsonNet解決方案,而無需通過創建和創建新對象的類,我想知道。 –