首页 > 解决方案 > c#如何以以下格式形成列表

问题描述

在 c# 中,我有一个对象如下

{"allAnimal":[{"AnimalType":"cat","AnimalCount":2}]}

现在,我想要以下格式,

{"allAnimal":{"Animal" :[{"AnimalType":"cat","AnimalCount":2}]}}

我的代码:

namespace ArrayOrList
{
    public class Program 
    {
        static void Main(string[] args)
        {
            AnimalSet list = new AnimalSet();

            Animal myAnimal = new Animal();

            myAnimal.AnimalType = "cat";
            myAnimal.AnimalCount = 2;
            list.allAnimal = new List<Animal>();

            myAnimal = new Animal();
            myAnimal.AnimalType = "dog";
            myAnimal.AnimalCount = 3;
            list.allAnimal.Add(myAnimal);

            var json = new JavaScriptSerializer().Serialize(list); 

        }
    }
    public class Animal
    {
        public string AnimalType { get; set; }
        public int AnimalCount { get; set; }
    }

    public class AnimalSet
    {
        public List<Animal> allAnimal { get; set; }
    }
}

标签: c#

解决方案


解决方案之一——

           static void Main(string[] args)
            {
                RootAnimal list = new RootAnimal();
                list.allAnimal = new AllAnimal();
                Animal myAnimal = new Animal();
                list.allAnimal.Animal = new List<Animal>();

                myAnimal = new Animal();
                myAnimal.AnimalType = "dog";
                myAnimal.AnimalCount = 3;
                list.allAnimal.Animal.Add(myAnimal);
                var json = JsonConvert.SerializeObject(list);
            }

   public class Animal
    {
        public string AnimalType { get; set; }
        public int AnimalCount { get; set; }
    }

    public class AllAnimal
    {
        public List<Animal> Animal { get; set; }
    }

    public class RootAnimal
    {
        public AllAnimal allAnimal { get; set; }
    }

推荐阅读