我经常要编写一些可序列化的类,用于存储配置,通过XML的属性标记可以很容易完成这些工作。但是大量的工作任务让我没有多少时间经常编写些‘体力代码’,于是就考虑如何简化这个工作。
那么XML文件是最终的结构,那么能否从XML结构通过某种工具还原为原始的序列化类代码呢?答案是肯定的。
例如:
一个简单的XML 的描述:

它对应的序列化代码为:



















一个带集合的XML代码:



















它对应的序列化代码为:
































































































































可以看到,比较复杂的XML代码的序列化类编码工作量是比较麻烦而且单调的。
那么如何才能将XML生成这样的逆向代码呢?
1、 递归遍历XML Node
2、 登记实体类的名称,类似“public class Method”
3、 登记所有属性的信息,解析属性类型,类似“protected string _name;”

















4、 登记集合类的名称,用于创建类似“[XmlArrayItem(typeof(Param))]”的代码
5、 输出代码
实现这些步骤的代码:























































































































































































































有些人喜欢看代码,了解思路;而有些人则喜欢直接使用工具,所以我希望这个工具对大家有所帮助,并提供了代码和执行程序的下载。
下载地址: