Я использую json для сохранения некоторых данных: < /p>
public ViewModel
{
public TestClass testClass { get; set; }
public ViewModel()
{
testClass = new TestClass();
}
public void SaveFile()
{
SaveAs(testClass);
}
private void SaveAs(object data)
{
string jsonString = JsonSerializer.Serialize(data);
SaveFileDialog dialog = new SaveFileDialog();
if (dialog.ShowDialog() == true)
{
File.WriteAllText(dialog.FileName,jsonString);
}
}
}
< /code>
Когда я делаю простой класс, как это: < /p>
public class TestClass
{
public string Name { get; set; }
public double Size { get; set; }
}
< /code>
Сериализация работает как предполагалось, и дает мне этот файл: < /p>
{
"Name": null,
"Size": 0
}
< /code>
Когда я хочу, чтобы мой класс наследовал от ObservableCollection, как это: < /p>
public class TestClass : ObservableCollection
{
public TestClass()
{
Items.Add(new TestObject());
}
public string Name { get; set; }
public double Size { get; set; }
}
public class TestObject
{
public string ObjectName { get; set; }
public double ObjectSize { get; set; }
}
< /code>
Сериализация только дает мне объекты ObservableCollection: < /p>
[
{
"ObjectName": null,
"ObjectSize": 0
}
]
< /code>
Я хочу, чтобы свойства имени и размера класса TestClass также были сериализованы. Как я могу сделать это?[
{
"Name": null,
"Size": 0
{
"ObjectName": null,
"ObjectSize": 0
}
}
]
Подробнее здесь: https://stackoverflow.com/questions/794 ... tion-how-t
C# JSON Serialization объект, который наследует от ObservableCollection - Как включить свойства детского класса? ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как включить (или заменить) статические свойства в System.text.json Serialization?
Anonymous » » в форуме C# - 0 Ответы
- 8 Просмотры
-
Последнее сообщение Anonymous
-