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

c#如何形成以下格式的列表,c#,C#,在c#中,我有一个对象,如下所示 {"allAnimal":[{"AnimalType":"cat","AnimalCount":2}]} 现在,我想要下面的格式 {"allAnimal":{"Animal" :[{"AnimalType":"cat","AnimalCount":2}]}} 我的代码: namespace ArrayOrList { public class Program { static void Main(string[] args)

在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; }
    }
}
名称空间数组列表
{
公共课程
{
静态void Main(字符串[]参数)
{
AnimalSet list=新的AnimalSet();
动物myAnimal=新动物();
myAnimal.AnimalType=“猫”;
myAnimal.AnimalCount=2;
list.allAnimal=新列表();
myAnimal=新动物();
myAnimal.AnimalType=“狗”;
myAnimal.AnimalCount=3;
list.allAnimal.Add(myAnimal);
var json=new JavaScriptSerializer().Serialize(列表);
}
}
公营动物
{
公共字符串AnimalType{get;set;}
public int AnimalCount{get;set;}
}
公共类动物集
{
公共列表allAnimal{get;set;}
}
}

解决方案之一-

           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; }
    }
static void Main(字符串[]args)
{
RootAnimal list=新的RootAnimal();
list.allAnimal=新的allAnimal();
动物myAnimal=新动物();
list.allAnimal.Animal=新列表();
myAnimal=新动物();
myAnimal.AnimalType=“狗”;
myAnimal.AnimalCount=3;
list.allAnimal.Animal.Add(myAnimal);
var json=JsonConvert.SerializeObject(列表);
}
公营动物
{
公共字符串AnimalType{get;set;}
public int AnimalCount{get;set;}
}
公共类动物
{
公共列表{get;set;}
}
公营动物
{
公共AllAnimal AllAnimal{get;set;}
}

获取您想要的输出,并在visual studio中使用或复制过去的特殊json到类中。但请先仔细检查您的预期输出,因为这没有意义:动物是一个
列表<代码>动物
是一种类型。而
allAnimal
只有一个关于动物的属性列表。无论你从哪里开始阅读等级制度,它看起来都是胡说八道。非常感谢。成功了。有没有其他简单的方法可以达到同样的效果,因为我的应用程序在一个对象中有很多这样的对象。