.net 通过Model序列化XML

最近做一个Model转XML 话不多,直接上代码:

     [Serializable]
    [XmlRoot("root")]
    public class ResponseInvoicePush
    {
        public ResponseInvoicePush()
        {
            RESPONSE_FPXXS = new List<FPTSJG>();
        }
        [XmlElement("code")]
        public string RETURN_CODE { get; set; }

          [XmlAttribute("attr")]
        public string RETURN_MESSAGE { get; set; }

        [XmlIgnore]
        public string XmlIgnore { get; set; }

        [XmlArray("FPTSJGS")]
        public List<FPTSJG> RESPONSE_FPXXS { get; set; }

    }
    public class FPTSJG
    {
        public string FPQQLSH { get; set; }

        public string FPTSLSH { get; set; }
    }

代码讲解:

  1. 加载类的【?】 均为特性
  2. [Serializable] 将该类标记为可以序列化类
  3. [XmlRoot(“root”)]可以指定重新指定xml根节点的名称,若不加这特性,此类在序列化时候,会默认使用类名作为根节点
  4. [XmlElement(“code”)] 同3
  5. [XmlIgnore] 此特性是忽略此属性
  6. [XmlAttribute(“attr”)] 此属性会作为特性在 元素中
     List<FPTSJG> lis = new List<FPTSJG>(){
                           new  FPTSJG(){FPQQLSH="fs233df",FPTSLSH="f5454d"},
                           new  FPTSJG(){FPQQLSH="fs2324df",FPTSLSH="f43d"},
                           new  FPTSJG(){FPQQLSH="f7676sdf",FPTSLSH="f656d"}
             };

            ResponseInvoicePush push = new ResponseInvoicePush();
            push.RETURN_CODE = "niuni1111111df";
            push.RETURN_MESSAGE = "messagge";
            push.XmlIgnore = "XmlIgnore";
            push.RESPONSE_FPXXS = lis;
            XmlSerializer serializer = new XmlSerializer(typeof(ResponseInvoicePush));

            //将对象序列化输出到控制台
            serializer.Serialize(Console.Out, push);

            Console.Read();
  1. 新建一个控制台,将main方法放入
  2. 初始化ResponseInvoicePush 基本信息
  3. XmlSerializer serializer = new XmlSerializer(typeof(ResponseInvoicePush)); 开始使用xml序列化该模型
  4. serializer.Serialize(Console.Out, push); 将实体输出在前台页面

运行结果如下:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值