У меня возникла проблема с десериализацией JSON, при том что сериализация работает. Вот мои методы для сериализации и десериализации объектов моего класса Worker.
public void SaveWorkers(List<Worker> workers)
{
String filePath = @"D:\Data\JSON\Workers.json";
DataContractJsonSerializer jsonFormatter = new DataContractJsonSerializer(typeof(Worker));
using (FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate))
{
foreach (Worker worker in workers)
{
jsonFormatter.WriteObject(fs, worker);
}
}
}
public Worker[] RestoreWorkers()
{
String filePath = @"D:\Data\JSON\Workers.json";
DataContractJsonSerializer jsonFormatter = new DataContractJsonSerializer(typeof(Worker[]));
using (FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate))
{
Worker[] workers = (Worker[])jsonFormatter.ReadObject(fs);
return workers;
}
}
Когда я произвожу сериализацию объектов и потом пытаюсь десериализовать их и вывести информацию о них в консоль, то выводится пустая строка.
Worker[] restoredWorkers = RestoreWorkers();
foreach (Worker worker in restoredWorkers)
{
Console.WriteLine(worker.Name);
}
Я проверял файлы json, в которые я сериализую, там все объекты есть, но десериализация не происходит. Подскажите, пожалуйста, в чем проблема. Заранее спасибо.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости