RootObject root = new RootObject();
string json = JsonConvert.SerializeObject(root, Formatting.Indented);
В итоге получаем
{ "Billing": null, "Payment": null }
А не это
{
"FirstName": "123123",
"LastName": null,
"Email": null,
"Telephone": null,
"Address": null,
"City": null,
"State": null,
"Country": null,
"Zip": 0
},
"PaymentType": null,
"CardNumber": null,
"CVV": 0,
"ExpYear": 0,
"ExpMonth": 0
}
}
У вас нету инициализации объектов, которые вы хотите сериализировать.
Вы пишите:
public class RootObject
{
public Billing Billing {get; set;}
}
Вы грубо говоря сказали: "Здесь у меня должен быть объект типа Billing
и назвать его надо также, Billing
". Ок, представим, что у нас там будет public string Billing {get; set;}
, что тогда? Верно, у нас будет NULL
объект, ибо мы его не инициализировали и не задали ему каких либо данных.
Получается, для того, что бы в объекте были данные, его надо инициализировать, то есть в вашем случае это:
Либо:
public Billing Billing {get; set;} = new Billing();
Ну или:
RootObject root = new RootObject();
root.Billing = new Billing();
Или если класс Billing
изначально пустой, то:
Billing billing = new Billing();
billing.FirstName = "123123";
RootObject root = new RootObject();
root.Billing = billing;
Итог: Вы отдаете сериализации пустые классы, которые не как не инициализированы, что равнозначно значению NULL
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Делаю потиху задания из решебника и это на третьем пункте меня выбило немного из колеи
Подскажите, как сериализовать созданные Item'ы в панели, их текст, значение CheckBox и кнопку Delete, и дессериализовать при перезапуске программы?...
Собственно как получить координаты через gps/wifi/ip? В интернете нашёл видео, где пишут что-то типа
Пытаюсь перебрать массивы массивов через foreach: Ошибка