继承IXmlSerializable接口,专门针对性的实现序列化 参考 using System; using System.Xml; using System.Xml.Schema; using System.Xml.Serialization; public class Person : IXmlSerializable { // Private state private string personName; // Constructors public Person (string name) { personName = name; } public Person () { personName = null; } // Xml Serialization Infrastructure public void WriteXml (XmlWriter writer) { writer.WriteString(personName); } public void ReadXml (XmlReader reader) { personName = reader.ReadString(); } public XmlSchema GetSchema() { return(null); } // Print public override string ToString() { return(personName); }
在创建Serializer的时候,添加一个默认命名空间: XmlSerializer serializer = new XmlSerializer(typeof(My), "http://www.163.com"); //<--- using (StreamWriter sw = ...)) { serializer.Serialize(sw, test); }
参考
using System;
using System.Xml;
using System.Xml.Schema;
using System.Xml.Serialization;
public class Person : IXmlSerializable
{ // Private state private string personName;
// Constructors public Person (string name)
{
personName = name;
} public Person ()
{
personName = null;
}
// Xml Serialization Infrastructure public void WriteXml (XmlWriter writer)
{
writer.WriteString(personName);
} public void ReadXml (XmlReader reader)
{
personName = reader.ReadString();
} public XmlSchema GetSchema()
{
return(null);
}
// Print public override string ToString()
{
return(personName);
}
XmlSerializer serializer = new XmlSerializer(typeof(My), "http://www.163.com"); //<---
using (StreamWriter sw = ...))
{
serializer.Serialize(sw, test);
}