<Type Name="XmlSerializer" FullName="System.Xml.Serialization.XmlSerializer">
  <TypeSignature Maintainer="auto" Language="C#" Value="public class XmlSerializer" />
  <AssemblyInfo>
    <AssemblyName>System.Xml</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>To be added</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <summary>Class for serializing and and deserializing objects to XML.</summary>
    <remarks>
      <para>
XML serialization is useful when we want to store object state and restore it back later. 
</para>

XML serialization main benefits are:

<list type="bullet"><item><term>It is easy to use</term></item><item><term>It is very fast</term></item><item><term>You have to write mimimum of code</term></item></list>


On the other hand:

<list type="bullet"><item><term>All properties or fields you want to serialize must be public</term></item><item><term>Not every object can be serialized</term></item><item><term>Your classes must be designed for serialization (e.g you must provide public paremeterless constructor.)</term></item></list><para>
Now take a look at simple XML serialization example:
</para><example><code lang="C#">
// Simple XML serialization
using System;
using System.IO;
using System.Xml.Serialization;

public class MyObject {
    public int X;
    public int Y;

    public MyObject() {
    }

    public MyObject(int x, int y) {
        this.X = x;
        this.Y = y;
    }    

	public static void Main(string[] args)
	{
		MyObject o = new MyObject (5, 8);
		using (FileStream fs = new FileStream("test.xml", FileMode.Create)) {        
			XmlSerializer serializer = new XmlSerializer(typeof(MyObject));
			serializer.Serialize(fs, o);	
		}
	}
}
  </code></example><para>
MyObject is here class that will be serialized. We serialize it's instance o to file test.xml. First we must create instance of XmlSerializer. As parameter we pass type of object we want to serialize. Then calling Serialize method with stream and object does serialization for us.
</para><para>
Next example shows how to load object back from XML.
</para><example><code lang="C#">
// Simple XML deserialization
using System;
using System.IO;
using System.Xml.Serialization;

public class MyObject {
    public int X;
    public int Y;

    public MyObject() {
    }

    public MyObject(int x, int y) {
        this.X = x;
        this.Y = y;
    }    

	public static void Main(string[] args) {
		MyObject o;
		using (FileStream fs = File.OpenRead("test.xml")) {        
			XmlSerializer serializer = new XmlSerializer(typeof(MyObject));
			o = (MyObject) serializer.Deserialize(fs);	
		}
		Console.WriteLine("Deserialized object: " + o.X + "," + o.Y);
	}
}
  </code></example><para>
These were two simple examples, but reality is more complex. You will need to control serialization process. That can be done using various attributes from System.Xml.Serialization. Use


<list type="bullet"><item><term>XmlIgnore attribute for public fields or properties that you don't want to serialize</term></item></list></para></remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected XmlSerializer ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
      </Parameters>
      <Docs>
        <param name="type">To be added: an object of type 'System.Type'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (System.Xml.Serialization.XmlTypeMapping xmlTypeMapping);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="xmlTypeMapping" Type="System.Xml.Serialization.XmlTypeMapping" />
      </Parameters>
      <Docs>
        <param name="xmlTypeMapping">To be added: an object of type 'XmlTypeMapping'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type, string defaultNamespace);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="defaultNamespace" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="type">To be added: an object of type 'System.Type'</param>
        <param name="defaultNamespace">To be added: an object of type 'string'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type, Type[] extraTypes);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="extraTypes" Type="System.Type[]" />
      </Parameters>
      <Docs>
        <param name="type">To be added: an object of type 'System.Type'</param>
        <param name="extraTypes">To be added: an object of type 'System.Type[]'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type, System.Xml.Serialization.XmlAttributeOverrides overrides);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="overrides" Type="System.Xml.Serialization.XmlAttributeOverrides" />
      </Parameters>
      <Docs>
        <param name="type">To be added: an object of type 'System.Type'</param>
        <param name="overrides">To be added: an object of type 'XmlAttributeOverrides'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type, System.Xml.Serialization.XmlRootAttribute root);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="root" Type="System.Xml.Serialization.XmlRootAttribute" />
      </Parameters>
      <Docs>
        <param name="type">To be added: an object of type 'System.Type'</param>
        <param name="root">To be added: an object of type 'XmlRootAttribute'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type, System.Xml.Serialization.XmlAttributeOverrides overrides, Type[] extraTypes, System.Xml.Serialization.XmlRootAttribute root, string defaultNamespace);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="overrides" Type="System.Xml.Serialization.XmlAttributeOverrides" />
        <Parameter Name="extraTypes" Type="System.Type[]" />
        <Parameter Name="root" Type="System.Xml.Serialization.XmlRootAttribute" />
        <Parameter Name="defaultNamespace" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="type">To be added: an object of type 'System.Type'</param>
        <param name="overrides">To be added: an object of type 'XmlAttributeOverrides'</param>
        <param name="extraTypes">To be added: an object of type 'System.Type[]'</param>
        <param name="root">To be added: an object of type 'XmlRootAttribute'</param>
        <param name="defaultNamespace">To be added: an object of type 'string'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public XmlSerializer (Type type, System.Xml.Serialization.XmlAttributeOverrides overrides, Type[] extraTypes, System.Xml.Serialization.XmlRootAttribute root, string defaultNamespace, string location, System.Security.Policy.Evidence evidence);" />
      <MemberType>Constructor</MemberType>
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="overrides" Type="System.Xml.Serialization.XmlAttributeOverrides" />
        <Parameter Name="extraTypes" Type="System.Type[]" />
        <Parameter Name="root" Type="System.Xml.Serialization.XmlRootAttribute" />
        <Parameter Name="defaultNamespace" Type="System.String" />
        <Parameter Name="location" Type="System.String" />
        <Parameter Name="evidence" Type="System.Security.Policy.Evidence" />
      </Parameters>
      <Docs>
        <param name="type">To be added.</param>
        <param name="overrides">To be added.</param>
        <param name="extraTypes">To be added.</param>
        <param name="root">To be added.</param>
        <param name="defaultNamespace">To be added.</param>
        <param name="location">To be added.</param>
        <param name="evidence">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="CanDeserialize">
      <MemberSignature Language="C#" Value="public virtual bool CanDeserialize (System.Xml.XmlReader xmlReader);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlReader" Type="System.Xml.XmlReader" />
      </Parameters>
      <Docs>
        <param name="xmlReader">To be added: an object of type 'System.Xml.XmlReader'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'bool'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="CreateReader">
      <MemberSignature Language="C#" Value="protected virtual System.Xml.Serialization.XmlSerializationReader CreateReader ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlSerializationReader</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'XmlSerializationReader'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="CreateWriter">
      <MemberSignature Language="C#" Value="protected virtual System.Xml.Serialization.XmlSerializationWriter CreateWriter ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlSerializationWriter</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'XmlSerializationWriter'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="public object Deserialize (System.IO.Stream stream);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="stream" Type="System.IO.Stream" />
      </Parameters>
      <Docs>
        <param name="stream">To be added: an object of type 'System.IO.Stream'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'object'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="public object Deserialize (System.IO.TextReader textReader);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="textReader" Type="System.IO.TextReader" />
      </Parameters>
      <Docs>
        <param name="textReader">To be added: an object of type 'System.IO.TextReader'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'object'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="protected virtual object Deserialize (System.Xml.Serialization.XmlSerializationReader reader);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="reader" Type="System.Xml.Serialization.XmlSerializationReader" />
      </Parameters>
      <Docs>
        <param name="reader">To be added: an object of type 'XmlSerializationReader'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'object'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="public object Deserialize (System.Xml.XmlReader xmlReader);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlReader" Type="System.Xml.XmlReader" />
      </Parameters>
      <Docs>
        <param name="xmlReader">To be added: an object of type 'System.Xml.XmlReader'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'object'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="public object Deserialize (System.Xml.XmlReader xmlReader, string encodingStyle);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlReader" Type="System.Xml.XmlReader" />
        <Parameter Name="encodingStyle" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="xmlReader">To be added.</param>
        <param name="encodingStyle">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="public object Deserialize (System.Xml.XmlReader xmlReader, System.Xml.Serialization.XmlDeserializationEvents events);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlReader" Type="System.Xml.XmlReader" />
        <Parameter Name="events" Type="System.Xml.Serialization.XmlDeserializationEvents" />
      </Parameters>
      <Docs>
        <param name="xmlReader">To be added.</param>
        <param name="events">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="Deserialize">
      <MemberSignature Language="C#" Value="public object Deserialize (System.Xml.XmlReader xmlReader, string encodingStyle, System.Xml.Serialization.XmlDeserializationEvents events);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlReader" Type="System.Xml.XmlReader" />
        <Parameter Name="encodingStyle" Type="System.String" />
        <Parameter Name="events" Type="System.Xml.Serialization.XmlDeserializationEvents" />
      </Parameters>
      <Docs>
        <param name="xmlReader">To be added.</param>
        <param name="encodingStyle">To be added.</param>
        <param name="events">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="FromMappings">
      <MemberSignature Language="C#" Value="public static System.Xml.Serialization.XmlSerializer[] FromMappings (System.Xml.Serialization.XmlMapping[] mappings);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlSerializer[]</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mappings" Type="System.Xml.Serialization.XmlMapping[]" />
      </Parameters>
      <Docs>
        <param name="mappings">To be added: an object of type 'XmlMapping[]'</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'XmlSerializer[]'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="FromMappings">
      <MemberSignature Language="C#" Value="public static System.Xml.Serialization.XmlSerializer[] FromMappings (System.Xml.Serialization.XmlMapping[] mappings, System.Security.Policy.Evidence evidence);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlSerializer[]</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mappings" Type="System.Xml.Serialization.XmlMapping[]" />
        <Parameter Name="evidence" Type="System.Security.Policy.Evidence" />
      </Parameters>
      <Docs>
        <param name="mappings">To be added.</param>
        <param name="evidence">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="FromMappings">
      <MemberSignature Language="C#" Value="public static System.Xml.Serialization.XmlSerializer[] FromMappings (System.Xml.Serialization.XmlMapping[] mappings, Type type);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlSerializer[]</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mappings" Type="System.Xml.Serialization.XmlMapping[]" />
        <Parameter Name="type" Type="System.Type" />
      </Parameters>
      <Docs>
        <param name="mappings">To be added.</param>
        <param name="type">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="FromTypes">
      <MemberSignature Language="C#" Value="public static System.Xml.Serialization.XmlSerializer[] FromTypes (Type[] mappings);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlSerializer[]</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mappings" Type="System.Type[]" />
      </Parameters>
      <Docs>
        <param name="mappings">To be added.</param>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'XmlSerializer[]'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="GenerateSerializer">
      <MemberSignature Language="C#" Value="public static System.Reflection.Assembly GenerateSerializer (Type[] types, System.Xml.Serialization.XmlMapping[] mappings);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Reflection.Assembly</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="types" Type="System.Type[]" />
        <Parameter Name="mappings" Type="System.Xml.Serialization.XmlMapping[]" />
      </Parameters>
      <Docs>
        <param name="types">To be added.</param>
        <param name="mappings">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="GenerateSerializer">
      <MemberSignature Language="C#" Value="public static System.Reflection.Assembly GenerateSerializer (Type[] types, System.Xml.Serialization.XmlMapping[] mappings, System.CodeDom.Compiler.CompilerParameters parameters);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Reflection.Assembly</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="types" Type="System.Type[]" />
        <Parameter Name="mappings" Type="System.Xml.Serialization.XmlMapping[]" />
        <Parameter Name="parameters" Type="System.CodeDom.Compiler.CompilerParameters" />
      </Parameters>
      <Docs>
        <param name="types">To be added.</param>
        <param name="mappings">To be added.</param>
        <param name="parameters">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="GetXmlSerializerAssemblyName">
      <MemberSignature Language="C#" Value="public static string GetXmlSerializerAssemblyName (Type type);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
      </Parameters>
      <Docs>
        <param name="type">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="GetXmlSerializerAssemblyName">
      <MemberSignature Language="C#" Value="public static string GetXmlSerializerAssemblyName (Type type, string defaultNamespace);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="type" Type="System.Type" />
        <Parameter Name="defaultNamespace" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="type">To be added.</param>
        <param name="defaultNamespace">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.IO.Stream stream, object o);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="stream" Type="System.IO.Stream" />
        <Parameter Name="o" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="stream">To be added: an object of type 'System.IO.Stream'</param>
        <param name="o">To be added: an object of type 'object'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.IO.TextWriter textWriter, object o);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="textWriter" Type="System.IO.TextWriter" />
        <Parameter Name="o" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="textWriter">To be added: an object of type 'System.IO.TextWriter'</param>
        <param name="o">To be added: an object of type 'object'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="protected virtual void Serialize (object o, System.Xml.Serialization.XmlSerializationWriter writer);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="o" Type="System.Object" />
        <Parameter Name="writer" Type="System.Xml.Serialization.XmlSerializationWriter" />
      </Parameters>
      <Docs>
        <param name="o">To be added: an object of type 'object'</param>
        <param name="writer">To be added: an object of type 'XmlSerializationWriter'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.Xml.XmlWriter xmlWriter, object o);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlWriter" Type="System.Xml.XmlWriter" />
        <Parameter Name="o" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="xmlWriter">To be added: an object of type 'System.Xml.XmlWriter'</param>
        <param name="o">To be added: an object of type 'object'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.IO.Stream stream, object o, System.Xml.Serialization.XmlSerializerNamespaces namespaces);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="stream" Type="System.IO.Stream" />
        <Parameter Name="o" Type="System.Object" />
        <Parameter Name="namespaces" Type="System.Xml.Serialization.XmlSerializerNamespaces" />
      </Parameters>
      <Docs>
        <param name="stream">To be added: an object of type 'System.IO.Stream'</param>
        <param name="o">To be added: an object of type 'object'</param>
        <param name="namespaces">To be added: an object of type 'XmlSerializerNamespaces'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.IO.TextWriter textWriter, object o, System.Xml.Serialization.XmlSerializerNamespaces namespaces);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="textWriter" Type="System.IO.TextWriter" />
        <Parameter Name="o" Type="System.Object" />
        <Parameter Name="namespaces" Type="System.Xml.Serialization.XmlSerializerNamespaces" />
      </Parameters>
      <Docs>
        <param name="textWriter">To be added: an object of type 'System.IO.TextWriter'</param>
        <param name="o">To be added: an object of type 'object'</param>
        <param name="namespaces">To be added: an object of type 'XmlSerializerNamespaces'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.Xml.XmlWriter writer, object o, System.Xml.Serialization.XmlSerializerNamespaces namespaces);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlWriter" />
        <Parameter Name="o" Type="System.Object" />
        <Parameter Name="namespaces" Type="System.Xml.Serialization.XmlSerializerNamespaces" />
      </Parameters>
      <Docs>
        <param name="writer">To be added.</param>
        <param name="o">To be added: an object of type 'object'</param>
        <param name="namespaces">To be added: an object of type 'XmlSerializerNamespaces'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.Xml.XmlWriter xmlWriter, object o, System.Xml.Serialization.XmlSerializerNamespaces namespaces, string encodingStyle);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlWriter" Type="System.Xml.XmlWriter" />
        <Parameter Name="o" Type="System.Object" />
        <Parameter Name="namespaces" Type="System.Xml.Serialization.XmlSerializerNamespaces" />
        <Parameter Name="encodingStyle" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="xmlWriter">To be added.</param>
        <param name="o">To be added.</param>
        <param name="namespaces">To be added.</param>
        <param name="encodingStyle">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="Serialize">
      <MemberSignature Language="C#" Value="public void Serialize (System.Xml.XmlWriter xmlWriter, object o, System.Xml.Serialization.XmlSerializerNamespaces namespaces, string encodingStyle, string id);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xmlWriter" Type="System.Xml.XmlWriter" />
        <Parameter Name="o" Type="System.Object" />
        <Parameter Name="namespaces" Type="System.Xml.Serialization.XmlSerializerNamespaces" />
        <Parameter Name="encodingStyle" Type="System.String" />
        <Parameter Name="id" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="xmlWriter">To be added.</param>
        <param name="o">To be added.</param>
        <param name="namespaces">To be added.</param>
        <param name="encodingStyle">To be added.</param>
        <param name="id">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
        <since version=".NET 2.0" />
      </Docs>
    </Member>
    <Member MemberName="UnknownAttribute">
      <MemberSignature Language="C#" Value="public event System.Xml.Serialization.XmlAttributeEventHandler UnknownAttribute;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlAttributeEventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="UnknownElement">
      <MemberSignature Language="C#" Value="public event System.Xml.Serialization.XmlElementEventHandler UnknownElement;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlElementEventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="UnknownNode">
      <MemberSignature Language="C#" Value="public event System.Xml.Serialization.XmlNodeEventHandler UnknownNode;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.XmlNodeEventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="UnreferencedObject">
      <MemberSignature Language="C#" Value="public event System.Xml.Serialization.UnreferencedObjectEventHandler UnreferencedObject;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.Xml.Serialization.UnreferencedObjectEventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
  </Members>
</Type>
