如何序列化类列表 [英] How to serialize list of class

查看:67
本文介绍了如何序列化类列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  public   class  slab 
{
public int lowerlimit { get ; set ; }
public int upperlimit { get ; set ; }
public int 百分比{ get ; set ; }

}

class 计划
{
static void Main( string [] args)
{
List< slab> slabs = new List< slab>();
slab s = new slab();
s.lowerlimit = 0 ;
s.upperlimit = 200000 ;
s.percentage = 0 ;

slabs.Add(s);

s = new slab();
s.lowerlimit = 0 ;
s.upperlimit = 200000 ;
s.percentage = 0 ;

slabs.Add(s);

XmlSerializer serializer = new XmlSerializer( typeof (slab), new XmlRootAttribute( slabs));
StringWriter writer = new StringWriter();
serializer.Serialize(writer,slabs);
}
} < / slab > < / slab >

解决方案

请看这里: XML序列化和反序列化:第1部分 [ ^ ]


使用List的对象

 XmlSerializer serializer =  new  XmlSerializer(< big>   typeof (slabs) < /   big  >  new  Xm lRootAttribute(  slabs)); 



而不是

 XmlSerializer serializer =  new  XmlSerializer( typeof (slab), new  XmlRootAttribute( 板坯)); 


public class slab
    {
        public int lowerlimit { get; set; }
        public int upperlimit { get; set; }
        public int percentage { get; set; }

    }
   
    class Program
    {
        static void Main(string[] args)
        {
            List<slab> slabs = new List<slab>();
            slab s = new slab();
            s.lowerlimit = 0;
            s.upperlimit = 200000;
            s.percentage = 0;

            slabs.Add(s);

            s = new slab();
            s.lowerlimit = 0;
            s.upperlimit = 200000;
            s.percentage = 0;

            slabs.Add(s);

            XmlSerializer serializer = new XmlSerializer(typeof(slab), new XmlRootAttribute("slabs"));
            StringWriter writer = new StringWriter();
            serializer.Serialize(writer, slabs);
        }
    }</slab></slab>

解决方案

See here: XML Serialization and Deserialization: Part-1[^]


Use object of List

XmlSerializer serializer = new XmlSerializer(<big>typeof(slabs)</big>, new XmlRootAttribute("slabs"));


instead of

XmlSerializer serializer = new XmlSerializer(typeof(slab), new XmlRootAttribute("slabs"));


这篇关于如何序列化类列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆