Как сериализовать повторяющиеся поля? - PullRequest
0 голосов
/ 23 марта 2020

В настоящее время мне нужно, чтобы Json выглядел так

[
 {
     "id": -2147483639,
     "parentId": 37
    },
    {
    "id": -2147483636,
    "parentId": 35
    }
]

В моей структуре у меня есть класс модели со следующим. Как заставить сериализовать json так, как показано выше, когда у меня есть другой набор атрибутов с тем же именем. И также это самый эффективный способ сериализации. Я использую JsonConvert.SerializeObject (new Model ()); вот как я это сериализую

Serializable]
    public class Model
    {
         public int id { get; set; }
         public int parentId { get; set; }

        public Model()
        {
            id = -2147483639; 
            parentId = 37; 

        }

    } 

1 Ответ

0 голосов
/ 23 марта 2020

Если я понимаю ваш вопрос, то, как показано ниже, должно дать вам представление о том, как go двигаться вперед. Обратите внимание, я бы удалил код, который вы имеете в конструкторе. Скорее всего, вы бы использовали List<Model>.

    static void Main(string[] args)
    {

        try
        {
            List<Model> lm = new List<Model>();
            lm.Add(new Model() { id = 1000, parentId = 2000 });
            lm.Add(new Model() { id = 3000, parentId = 4000 });
            string sm = JsonConvert.SerializeObject(lm);

        }
        catch (Exception)
        {
            throw;
        }

    }
...