假设我们需要XML,但是不想要SOAP特有的额外信息,应该怎么办?我们可以使用类库XMLSerializer。
代码如下:
序列化 - 使用XmlSerializer进行序列化using System;
序列化 - 使用XmlSerializer进行序列化
using System.IO;
序列化 - 使用XmlSerializer进行序列化
using System.Xml.Serialization;
序列化 - 使用XmlSerializer进行序列化
序列化 - 使用XmlSerializer进行序列化
//[Serializable]
序列化 - 使用XmlSerializer进行序列化
public class Insect
}

注意:
1.这里去掉了Serializable属性和NonSerilizable属性,使用XMLIgnore属性完成NonSerialized类似的功能。
2.XmlSerializer不能安全的访地问私有成员,所以我们改为共有成员,也可以提供合适的公有属性(Property)。
3.Xml要求我们的类有一个默认构造器,这个条件可能已经满足了。
我们可以用VS.NET打开AnInsect.xml文件,可以看到以下信息:
<?xml version="1.0"?>
<Insect xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <name>Meadow Brown</name>
</Insect>

相关文章: