c#如何以以下格式形成列表

时间:2018-07-16 12:13:43

标签: 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; }
    }
}

1 个答案:

答案 0 :(得分:0)

一种解决方案-

           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; }
    }