C# Сохранение списка объектов класса, в котором есть структура, в JSON

Рейтинг: 1Ответов: 0Опубликовано: 21.02.2023

Есть класс с различными полями, в том числе и полем 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");

Если вместо структуры сделать массив, то он прекрасно сохраняется.

Ответы

Ответов пока нет.