Export (0) Print
Expand All

IXmlSerializable.WriteXml Method

Converts an object into its XML representation.

Namespace:  System.Xml.Serialization
Assembly:  System.Xml (in System.Xml.dll)

void WriteXml(
	XmlWriter writer
)

Parameters

writer
Type: System.Xml.XmlWriter

The XmlWriter stream to which the object is serialized.

The WriteXml implementation you provide should write out the XML representation of the object. The framework writes a wrapper element and positions the XML writer after its start. Your implementation may write its contents, including child elements. The framework then closes the wrapper element.

Write sufficient information to the XmlWriter stream to allow the ReadXml method to reconstitute your object.

For example, if your object state includes an array variable, be sure to write the length of the array, or use a parent element to contain the elements that describe the array values, so that you know how many values to read when the object is reconstituted.

The following example illustrates an implementation of the WriteXml method.

public void WriteXml (XmlWriter writer)
{
    writer.WriteString(personName);
}
public:
    void WriteXml (XmlWriter* writer)
    {
        writer->WriteString(personName);
    }

The following example illustrates the use of the XmlSerializer class to deserialize this object.

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);
  }

}
#using <mscorlib.dll>
#using <System.Xml.dll>
#using <Person.dll>

using namespace System;
using namespace System::Xml;
using namespace System::Xml::Serialization;

int main() {

   // Create a person object.
   Person* fred = new Person(S"Fred Flintstone");

   // Serialize the object to a file.
   XmlTextWriter* writer = new XmlTextWriter(S"test.xml", 0);
   XmlSerializer* serializer = new XmlSerializer(__typeof(Person));
   serializer->Serialize(writer, fred);
}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft