当前位置:编程学习 > XML/UML >>

C#用于XML格式存储的工具类

最近很喜欢使用XML(C#的Linq to XML)。写个类后总想把它能用XML文件保存起来,一般我都是写个ToXElement函数然后在里面……

今天写烦了,想写一个通用的工具类,以便很方便地把一个类保存化为XML。

看看写出来的结果:

那个静态类Test是用于测试的,测试结果:

  1 /************************************************************************
  2  * 把一个对象格式化为XML(元素),即:
  3  *     1、该XML元素的名字为该对象的类型
  4  *     2、对该对象中每一个公共属性(Property)转换为字符串(String)
  5  *         保存到XML元素的属性中
  6  * 把一个XML粘贴到一个对象中,即为上一过程的逆过程。
  7  *     
  8  * 对象信息保存到XML中(然后再保存到文件)很显然将具有很高的可读性
  9 ************************************************************************/
 10 using System;
 11 using System.Collections.Generic;
 12 using System.Linq;
 13 using System.Text;
 14 using System.Xml.Linq;
 15 namespace DotNetEx.FormatAsXml
 16 {
 17     /// <summary>
 18     /// 标识能格式化为XML,可以被用在类和结构上,不可以继承,不支持多重标记
 19     /// </summary>
 20     [AttributeUsage(AttributeTargets.Class|AttributeTargets.Struct, Inherited = false, 
 21         AllowMultiple = false)]
 22     public sealed class CanFormatToXmlAttribute : Attribute
 23     {
 24        public CanFormatToXmlAttribute () {   }
 25     }
 26     /// <summary>
 27     /// 标识该属性不用被格式化
 28     /// </summary>
 29     [AttributeUsage(AttributeTargets.Property,Inherited=false,
 30         AllowMultiple=false)]
 31     public sealed class DonotFormatToXmlAttribute:Attribute
补充:软件开发 , C# ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,