C# Сохранение списка объектов класса, в котором есть структура, в JSON
Есть класс с различными полями, в том числе и полем struct
[Serializable]
public class example
{
public string Name { get; set; }
...
public struct test_struct
{
public string var1;
public string var2;
public string var3;
}
public static List<example> collection = new List<example>();
public example()
{
collection.Add(this);
}
Имеется список объектов этого класса, которые записаны в example.collections
Например,
for (int i=0; i<2; i++) {
example new_collection = new();
example.test_struct new_struct = new();
example.Name = "king";
new_struct.var1 = "mask";
new_struct.var2 = "client";
new_struct.var3 = "sun";
}
Вопрос: Как сохранить объекты класса вместе со структурой в Json? Я пробую сохранить список объектов, но структура при этом не сохраняется (почему?):
public void SaveToJson<T>(List<T> list, string filename)
{
string json = JsonSerializer.Serialize(list);
File.WriteAllText(filename, json);
}
...
SaveToJson(example.collection, "filename.json");
Если вместо структуры сделать массив, то он прекрасно сохраняется.
Источник: Stack Overflow на русском