IXmlSerializable.WriteXml(XmlWriter) 方法   
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将对象转换为其 XML 表示形式。
public:
 void WriteXml(System::Xml::XmlWriter ^ writer);public void WriteXml (System.Xml.XmlWriter writer);abstract member WriteXml : System.Xml.XmlWriter -> unitPublic Sub WriteXml (writer As XmlWriter)参数
示例
下面的示例演示了方法的 WriteXml 实现。
virtual void WriteXml( XmlWriter^ writer )
{
   writer->WriteString( personName );
}
public void WriteXml (XmlWriter writer)
{
    writer.WriteString(personName);
}
下面的示例演示了使用该类反序列化此对象的用法 XmlSerializer 。
#using <System.Xml.dll>
#using <System.dll>
#using <Person.dll>
using namespace System;
using namespace System::Xml;
using namespace System::Xml::Serialization;
int main()
{
   // Create a person object.
   Person ^ fred = gcnew Person( "Fred Flintstone" );
   // Serialize the object to a file.
   XmlTextWriter^ writer = gcnew XmlTextWriter( "test.xml", nullptr );
   XmlSerializer^ serializer = gcnew XmlSerializer( Person::typeid );
   serializer->Serialize( writer, fred );
}
using System;
using System.Xml;
using System.Xml.Serialization;
public class Writer {
  public static void Main() {
    // Create a person object.
    Person fred = new Person("Fred Flintstone");
    // Serialize the object to a file.
    XmlTextWriter writer = new XmlTextWriter("test.xml", null);
    XmlSerializer serializer = new XmlSerializer(typeof(Person));
    serializer.Serialize(writer, fred);
  }
}
注解
WriteXml提供的实现应写出对象的 XML 表示形式。 框架写入包装元素,并在 XML 编写器启动时放置 XML 编写器。 实现可以编写其内容,包括子元素。 然后,框架关闭包装元素。
将 XmlWriter 足够的信息写入流,以允许 ReadXml 该方法重新构造对象。
例如,如果对象状态包含数组变量,请务必写入数组的长度,或使用父元素包含描述数组值的元素,以便你知道在重新构造对象时要读取的值。