寫入類以反序列化JSON文件時出現問題。將JSON反序列化到包含字典的類時獲取空字段
我的課是這樣的:
public class Button1
{
public string Caption = "";
public Dictionary<string, Button1> Buttons;
}
public class ButtonsMenu
{
public Dictionary<string, Button1> Buttons;
}
,我嘗試反序列化JSON這樣:
{
"Buttons": {
"Activity": {
"btn1": {
"Caption": "Promeni sostojba"
},
"btn2": {
"Caption": "Izvrsi nesto drugo"
}
},
"Navigate": {
"btnA": {
"Caption": "Pojdi na druga forma"
},
"btnB": {
"Caption": "Otvori nesto razlicno"
}
},
"Print": {
"btnX1": {
"Caption": "Pecati nalog"
},
"btnX2": {
"Caption": "Pecati report"
}
}
}
}
與使用Json.Net的是這樣的:
var buttonDef = JsonConvert.DeserializeObject<ESB.Shared.DTO.ButtonsMenu>(formDefJson);
我的問題是當我試圖反序列化我的JSON時,我有三個項目Activity
,Navigate
和Print
,但字段Captions
到處都是空的。 你能告訴我我在課堂上缺少什麼嗎?
爲什麼你默認將它設置爲空字符串? 'public string Caption =「」' – Niladri
如果它沒有值爲空字符串而不爲空 –
這裏有兩個級別,Activity是另一個字典,試着將ButtonsMenu中的按鈕放到這裏:'public Dictionary>按鈕;'。 –