<?xml version="1.0" encoding="utf-8"?>
<Type Name="Message" FullName="System.ServiceModel.Channels.Message">
  <TypeSignature Language="C#" Value="public abstract class Message : IDisposable" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit Message extends System.Object implements class System.IDisposable" />
  <AssemblyInfo>
    <AssemblyName>System.ServiceModel</AssemblyName>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.IDisposable</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The <see cref="T:System.ServiceModel.Channels.Message" /> class provides a means of communicating arbitrary information between a sender and a receiver on a network. It can be used to relay information, suggest or demand a course of action, or request data. </para>
      <para>The structure of a <see cref="T:System.ServiceModel.Channels.Message" /> object represents a SOAP envelope. It consists of two distinct parts: the message's body and an optional collection of headers, represented by the <see cref="P:System.ServiceModel.Channels.Message.Headers" /> class. The message content is application-defined data sent from a sender to a receiver. The message headers enable system and application extensibility to meet the changing requirements, because you can define code to manipulate and respond to specific headers. You can also define your own headers. Message headers are serialized or deserialized along with the contents of the message. </para>
      <para>Messages are received and sent in particular formats. Support is provided for two formats: the standard text-based XML format and a binary-based XML format. The <see cref="T:System.ServiceModel.Channels.Message" /> object can be used to represent both SOAP 1.1 and SOAP 1.2 envelopes. Note that an instance of <see cref="T:System.ServiceModel.Channels.Message" /> is fixed upon creation and is bound to a specific SOAP version. The <see cref="P:System.ServiceModel.Channels.Message.Version" /> property represents the SOAP version of the message. </para>
      <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object can be serialized to an external store by using the <see cref="M:System.ServiceModel.Channels.Message.WriteMessage(System.Xml.XmlDictionaryWriter)" /> method. Properties of the message can also be serialized, but they have to be individually identified and serialized separately. Deserializing a message to create an in-memory <see cref="T:System.ServiceModel.Channels.Message" /> object can be done using <see cref="Overload:System.ServiceModel.Channels.Message.CreateMessage" />. Properties must also be deserialized individually and manually added to the property collection for the specific <see cref="T:System.ServiceModel.Channels.Message" /> instance. </para>
      <para>The size of a <see cref="T:System.ServiceModel.Channels.Message" /> object is fixed to the size of data it is transmitting. Every body is modeled as an instance of <see cref="T:System.Xml.XmlReader" />, with no predefined limit on the size of the stream that the <see cref="T:System.Xml.XmlReader" /> instance is wrapping. However, specific channel providers can have a limit on the size of messages that they process. </para>
      <para>A <see cref="T:System.ServiceModel.Channels.Message" /> can be annotated with useful information generated by an entity that has examined and processed the message. This functionality is provided by the <see cref="P:System.ServiceModel.Channels.Message.Headers" /> and <see cref="P:System.ServiceModel.Channels.Message.Properties" /> properties. The <see cref="P:System.ServiceModel.Channels.Message.Headers" /> collection represents the set of SOAP headers on the message. </para>
      <para>The <see cref="P:System.ServiceModel.Channels.Message.Properties" /> property represents the set of processing-level annotations on the message. Because information in headers is transmitted on the wire, an entity that examines a header must support the underlying version(s) of the protocols used by the header. However, properties provide a more version-independent way of annotating a message. </para>
      <para>To create a <see cref="T:System.ServiceModel.Channels.Message" /> instance, use one of the <see cref="Overload:System.ServiceModel.Channels.Message.CreateMessage" /> methods. </para>
      <para>It is recommended that a consumer of a message always call <see cref="M:System.ServiceModel.Channels.Message.Close" /> when the consumer is finished accessing the contents of the message. This action frees finite system resources (for example, sockets, named pipes) that are tied to the lifetime of the message. </para>
      <para>Special note for Managed C++ users deriving from this class:</para>
      <list type="bullet">
        <item>
          <para>Put your cleanup code in (On)(Begin)Close (and/or OnAbort), not in a destructor.</para>
        </item>
        <item>
          <para>Avoid destructors: they cause the compiler to auto-generate <see cref="T:System.IDisposable" />.</para>
        </item>
        <item>
          <para>Avoid non-reference members: they can cause the compiler to auto-generate <see cref="T:System.IDisposable" />.</para>
        </item>
        <item>
          <para>Avoid finalizers; but if you include one, suppress the build warning and call <see cref="M:System.GC.SuppressFinalize(System.Object)" /> and the finalizer itself from (On)(Begin)Close (and/or OnAbort) to emulate what would have been the auto-generated <see cref="T:System.IDisposable" /> behavior.</para>
        </item>
      </list>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Represents the unit of communication between endpoints in a distributed environment. </para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected Message ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters />
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.ServiceModel.Channels.Message" /> class. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="Close">
      <MemberSignature Language="C#" Value="public void Close ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Close() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="T:System.ServiceModel.Channels.Message" /> does have a finalizer, which causes <see cref="M:System.ServiceModel.Channels.Message.Close" /> to be called for you when the message is garbage-collected. This is non-optimal, as the .NET Framework's Garbage Collection (GC) mechanism does not necessarily run when you run out of system resources other than memory. For this reason, you should always call this method when finished with the contents of the message. The <see cref="M:System.ServiceModel.Channels.Message.Close" /> method is a synonym for <see cref="M:System.IDisposable.Dispose" /> (which <see cref="T:System.ServiceModel.Channels.Message" /> also implements). The message also disposes the object that was used to construct the body when it is disposed. </para>
          <para>An <see cref="T:System.ObjectDisposedException" /> is thrown if you call any method or access any properties of the message once it is closed. Calling any method or accessing any properties of other objects related to the message once it is closed, (such as message header collection, message property values, or <see cref="T:System.Xml.XmlReader" /> instances returned for the body or for a header) has undefined behavior. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Closes the <see cref="T:System.ServiceModel.Channels.Message" /> and releases any resources. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="CreateBufferedCopy">
      <MemberSignature Language="C#" Value="public System.ServiceModel.Channels.MessageBuffer CreateBufferedCopy (int maxBufferSize);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.ServiceModel.Channels.MessageBuffer CreateBufferedCopy(int32 maxBufferSize) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.MessageBuffer</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="maxBufferSize" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The body of a <see cref="T:System.ServiceModel.Channels.Message" /> instance can only be accessed or written once. If you want to access a <see cref="T:System.ServiceModel.Channels.Message" /> instance more than once, you should use the <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> class to completely store an entire <see cref="T:System.ServiceModel.Channels.Message" /> instance into memory. A <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> instance is constructed by calling <see cref="M:System.ServiceModel.Channels.Message.CreateBufferedCopy(System.Int32)" /> of a <see cref="T:System.ServiceModel.Channels.Message" /> instance.</para>
          <block subset="none" type="note">
            <para>If <see cref="P:System.ServiceModel.Channels.Message.Version" /> is equal to <see cref="P:System.ServiceModel.Channels.MessageVersion.None" />, this method only stores the body of the message, not the entire message into the memory buffer.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Stores an entire <see cref="T:System.ServiceModel.Channels.Message" /> into a memory buffer for future access.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A newly created <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> object.</para>
        </returns>
        <param name="maxBufferSize">
          <attribution license="cc4" from="Microsoft" modified="false" />The maximum size of the buffer to be created.</param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, string action);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, string action) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="action" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message that contains a version and an action.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message.</param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed.</param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, System.ServiceModel.Channels.MessageFault fault, string action);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, class System.ServiceModel.Channels.MessageFault fault, string action) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="fault" Type="System.ServiceModel.Channels.MessageFault" />
        <Parameter Name="action" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message that contains a SOAP fault, a version and an action.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message.</param>
        <param name="fault">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageFault" /> object that represents a SOAP fault. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed. </param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, string action, object body);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, string action, object body) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="action" Type="System.String" />
        <Parameter Name="body" Type="System.Object" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
          <para>When working with JSON messages use the <see cref="M:System.ServiceModel.Channels.Message.CreateMessage(System.ServiceModel.Channels.MessageVersion,System.String,System.Object,System.Runtime.Serialization.XmlObjectSerializer)" /> method, the <see cref="M:System.ServiceModel.Channels.Message.CreateMessage(System.ServiceModel.Channels.MessageVersion,System.String,System.Object)" /> method does not work with JSON messages.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message with the specified version, action and body. </para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed. </param>
        <param name="body">
          <attribution license="cc4" from="Microsoft" modified="false" />The body of the message.</param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, string action, System.ServiceModel.Channels.BodyWriter body);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, string action, class System.ServiceModel.Channels.BodyWriter body) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="action" Type="System.String" />
        <Parameter Name="body" Type="System.ServiceModel.Channels.BodyWriter" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An empty message is useful for an endpoint to send an alert to another endpoint without any actual content. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message with a body that consists of an array of bytes.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed. </param>
        <param name="body">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.BodyWriter" /> of type byte. </param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, string action, System.Xml.XmlDictionaryReader body);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, string action, class System.Xml.XmlDictionaryReader body) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="action" Type="System.String" />
        <Parameter Name="body" Type="System.Xml.XmlDictionaryReader" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message with the specified version, action and body.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed. </param>
        <param name="body">
          <attribution license="cc4" from="Microsoft" modified="false" />The body of the message.</param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, string action, System.Xml.XmlReader body);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, string action, class System.Xml.XmlReader body) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="action" Type="System.String" />
        <Parameter Name="body" Type="System.Xml.XmlReader" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message using the specified reader, action and version.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed. </param>
        <param name="body">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Xml.XmlReader" /> object to be used for reading the SOAP message.</param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.Xml.XmlDictionaryReader envelopeReader, int maxSizeOfHeaders, System.ServiceModel.Channels.MessageVersion version);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.Xml.XmlDictionaryReader envelopeReader, int32 maxSizeOfHeaders, class System.ServiceModel.Channels.MessageVersion version) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="envelopeReader" Type="System.Xml.XmlDictionaryReader" />
        <Parameter Name="maxSizeOfHeaders" Type="System.Int32" />
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <see cref="T:System.ServiceModel.Channels.Message" /> takes ownership of <paramref name="envelopeReader." /> </para>
          <para>This method reads the envelope, buffers all the headers into the header collection, and reads up to but not including the Body start tag, and returns the message. If the method call throws an exception, it closes the reader. </para>
          <para>The body of the returned message can then be either read or written. </para>
          <para>The message body can be read using the <see cref="Overload:System.ServiceModel.Channels.Message.GetBody" /> methods on the returned message. The returned object encapsulates all the child elements within the Body element. The message body can be written using <see cref="M:System.ServiceModel.Channels.Message.WriteBody(System.Xml.XmlDictionaryWriter)" /> or <see cref="M:System.ServiceModel.Channels.Message.WriteMessage(System.Xml.XmlDictionaryWriter)" />. Once written, it cannot be read. </para>
          <para>Closing the message closes the underlying envelope reader. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message using the specified reader, action and version.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="envelopeReader">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Xml.XmlDictionaryReader" /> object to be used for reading the SOAP message.</param>
        <param name="maxSizeOfHeaders">
          <attribution license="cc4" from="Microsoft" modified="false" />The maximum size in bytes of a header. </param>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A valid <see cref="T:System.ServiceModel.Channels.MessageVersion" /> value that specifies the SOAP version to use for the message. </param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.Xml.XmlReader envelopeReader, int maxSizeOfHeaders, System.ServiceModel.Channels.MessageVersion version);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.Xml.XmlReader envelopeReader, int32 maxSizeOfHeaders, class System.ServiceModel.Channels.MessageVersion version) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="envelopeReader" Type="System.Xml.XmlReader" />
        <Parameter Name="maxSizeOfHeaders" Type="System.Int32" />
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <see cref="T:System.ServiceModel.Channels.Message" /> takes ownership of <paramref name="envelopeReader." /> </para>
          <para>This method reads the envelope, buffers all the headers into the header collection, and reads up to but not including the Body start tag, and returns the message. If the method call throws an exception, it closes the reader. </para>
          <para>The body of the returned message can then be either read or written. </para>
          <para>The message body can be read using the <see cref="Overload:System.ServiceModel.Channels.Message.GetBody" /> methods on the returned message. The returned object encapsulates all the child elements within the Body element. The message body can be written using <see cref="M:System.ServiceModel.Channels.Message.WriteBody(System.Xml.XmlDictionaryWriter)" /> or <see cref="M:System.ServiceModel.Channels.Message.WriteMessage(System.Xml.XmlDictionaryWriter)" />. Once written, it cannot be read. </para>
          <para>Closing the message closes the underlying envelope reader. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message using the specified reader, action and version.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="envelopeReader">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Xml.XmlReader" /> object to be used for reading the SOAP message.</param>
        <param name="maxSizeOfHeaders">
          <attribution license="cc4" from="Microsoft" modified="false" />The maximum size in bytes of a header. </param>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message. </param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, System.ServiceModel.FaultCode code, string reason, string action);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, class System.ServiceModel.FaultCode code, string reason, string action) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="code" Type="System.ServiceModel.FaultCode" />
        <Parameter Name="reason" Type="System.String" />
        <Parameter Name="action" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="code">To be added.</param>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message that contains a SOAP fault, the reason for the fault, a version and an action.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message.</param>
        <param name="reason">
          <attribution license="cc4" from="Microsoft" modified="false" />The reason of the SOAP fault. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed.</param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, string action, object body, System.Runtime.Serialization.XmlObjectSerializer xmlFormatter);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, string action, object body, class System.Runtime.Serialization.XmlObjectSerializer xmlFormatter) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="action" Type="System.String" />
        <Parameter Name="body" Type="System.Object" />
        <Parameter Name="xmlFormatter" Type="System.Runtime.Serialization.XmlObjectSerializer" />
      </Parameters>
      <Docs>
        <param name="xmlFormatter">To be added.</param>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending. </para>
          <para>When working with JSON messages use the <see cref="M:System.ServiceModel.Channels.Message.CreateMessage(System.ServiceModel.Channels.MessageVersion,System.String,System.Object,System.Runtime.Serialization.XmlObjectSerializer)" /> method, the <see cref="M:System.ServiceModel.Channels.Message.CreateMessage(System.ServiceModel.Channels.MessageVersion,System.String,System.Object)" /> method does not work with JSON messages.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message using the specified version, action, message body and serializer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message. </param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed. </param>
        <param name="body">
          <attribution license="cc4" from="Microsoft" modified="false" />The body of the message. </param>
      </Docs>
    </Member>
    <Member MemberName="CreateMessage">
      <MemberSignature Language="C#" Value="public static System.ServiceModel.Channels.Message CreateMessage (System.ServiceModel.Channels.MessageVersion version, System.ServiceModel.FaultCode code, string reason, object detail, string action);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.ServiceModel.Channels.Message CreateMessage(class System.ServiceModel.Channels.MessageVersion version, class System.ServiceModel.FaultCode code, string reason, object detail, string action) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.Message</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="version" Type="System.ServiceModel.Channels.MessageVersion" />
        <Parameter Name="code" Type="System.ServiceModel.FaultCode" />
        <Parameter Name="reason" Type="System.String" />
        <Parameter Name="detail" Type="System.Object" />
        <Parameter Name="action" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="code">To be added.</param>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This static method is used to create a new copy of message ready for sending.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a message that contains a SOAP fault, a reason and the detail for the fault, a version and an action.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> object for the message created. </para>
        </returns>
        <param name="version">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object that specifies the SOAP version to use for the message.</param>
        <param name="reason">
          <attribution license="cc4" from="Microsoft" modified="false" />The reason of the SOAP fault. </param>
        <param name="detail">
          <attribution license="cc4" from="Microsoft" modified="false" />The details of the SOAP fault.</param>
        <param name="action">
          <attribution license="cc4" from="Microsoft" modified="false" />A description of how the message should be processed.</param>
      </Docs>
    </Member>
    <Member MemberName="GetBody&lt;T&gt;">
      <MemberSignature Language="C#" Value="public T GetBody&lt;T&gt; ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance !!T GetBody&lt;T&gt;() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>T</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="T" />
      </TypeParameters>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> instance has a body that corresponds to the SOAP body. It can be accessed as an <see cref="T:System.Xml.XmlDictionaryReader" /> by calling <see cref="M:System.ServiceModel.Channels.Message.GetReaderAtBodyContents" />. It is initially positioned directly after the &lt;S:Body&gt; element, and it returns EOF on reaching the &lt;/S:Body&gt; element. Alternatively, if you expect the body to contain a serialized object, you can call <see cref="Overload:System.ServiceModel.Channels.Message.GetBody" /> instead. You should be aware that a message body can only be accessed once and a message can only be written once. If you want to access the Body multiple times, use <see cref="M:System.ServiceModel.Channels.Message.CreateBufferedCopy(System.Int32)" /> to create a <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> instance. </para>
          <para>Use the <see cref="M:System.ServiceModel.Channels.Message.GetBody``1(System.Runtime.Serialization.XmlObjectSerializer)" /> overload when working with JSON messages; the <see cref="M:System.ServiceModel.Channels.Message.GetBody``1" /> overload does not work.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Retrieves the body of this <see cref="T:System.ServiceModel.Channels.Message" /> instance.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object of type <paramref name="T" /> that contains the body of this message.</para>
        </returns>
        <typeparam name="T">
          <attribution license="cc4" from="Microsoft" modified="false" />The body of the message.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GetBody&lt;T&gt;">
      <MemberSignature Language="C#" Value="public T GetBody&lt;T&gt; (System.Runtime.Serialization.XmlObjectSerializer xmlFormatter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance !!T GetBody&lt;T&gt;(class System.Runtime.Serialization.XmlObjectSerializer xmlFormatter) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>T</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="T" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="xmlFormatter" Type="System.Runtime.Serialization.XmlObjectSerializer" />
      </Parameters>
      <Docs>
        <param name="xmlFormatter">To be added.</param>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> instance has a body that corresponds to the SOAP body. It can be accessed as an <see cref="T:System.Xml.XmlDictionaryReader" /> by calling <see cref="M:System.ServiceModel.Channels.Message.GetReaderAtBodyContents" />. It is initially positioned directly after the &lt;S:Body&gt; element, and it returns EOF on reaching the &lt;/S:Body&gt; element. Alternatively, if you expect the body to contain a serialized object, you can call <see cref="Overload:System.ServiceModel.Channels.Message.GetBody" /> instead. You should be aware that a message body can only be accessed once and a message can only be written once. If you want to access the body multiple times, use <see cref="M:System.ServiceModel.Channels.Message.CreateBufferedCopy(System.Int32)" /> to create a <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> instance.  </para>
          <para>Use the <see cref="M:System.ServiceModel.Channels.Message.GetBody``1(System.Runtime.Serialization.XmlObjectSerializer)" /> overload when working with JSON messages; the <see cref="M:System.ServiceModel.Channels.Message.GetBody``1" /> overload does not work.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Retrieves the body of this <see cref="T:System.ServiceModel.Channels.Message" /> using the specified serializer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object of type <paramref name="T" /> that contains the body of this message.</para>
        </returns>
        <typeparam name="T">
          <attribution license="cc4" from="Microsoft" modified="false" />The body of the message.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GetBodyAttribute">
      <MemberSignature Language="C#" Value="public string GetBodyAttribute (string localName, string ns);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance string GetBodyAttribute(string localName, string ns) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="localName" Type="System.String" />
        <Parameter Name="ns" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> instance has a body that corresponds to the SOAP body. It can be accessed as an <see cref="T:System.Xml.XmlDictionaryReader" /> by calling <see cref="M:System.ServiceModel.Channels.Message.GetReaderAtBodyContents" />. It is initially positioned directly after the &lt;S:Body&gt; element, and it returns EOF on reaching the &lt;/S:Body&gt; element. Alternatively, if you expect the body to contain a serialized object, you can call <see cref="Overload:System.ServiceModel.Channels.Message.GetBody" /> instead. You should be aware that a message body can only be accessed once and a message can only be written once. If you want to access the body multiple times, use <see cref="M:System.ServiceModel.Channels.Message.CreateBufferedCopy(System.Int32)" /> to create a <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> instance.  </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Retrieves the attributes of the message body.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The attributes of the message body.</para>
        </returns>
        <param name="localName">
          <attribution license="cc4" from="Microsoft" modified="false" />The local name of the XML node.</param>
        <param name="ns">
          <attribution license="cc4" from="Microsoft" modified="false" />The namespace to which this XML element belongs.</param>
      </Docs>
    </Member>
    <Member MemberName="GetReaderAtBodyContents">
      <MemberSignature Language="C#" Value="public System.Xml.XmlDictionaryReader GetReaderAtBodyContents ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Xml.XmlDictionaryReader GetReaderAtBodyContents() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Xml.XmlDictionaryReader</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> instance has a body that corresponds to the SOAP body. It can be accessed as an <see cref="T:System.Xml.XmlDictionaryReader" /> by calling <see cref="M:System.ServiceModel.Channels.Message.GetReaderAtBodyContents" />. It is initially positioned directly after the &lt;S:Body&gt; element. Alternatively, if you expect the body to contain a serialized object, you can call <see cref="Overload:System.ServiceModel.Channels.Message.GetBody" /> instead. You should be aware that a message body can only be accessed once and a message can only be written once. If you want to access the body multiple times, use <see cref="M:System.ServiceModel.Channels.Message.CreateBufferedCopy(System.Int32)" /> to create a <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> instance.  </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the XML dictionary reader that accesses the body content of this message.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Xml.XmlDictionaryReader" /> object that accesses the body content of this message.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="Headers">
      <MemberSignature Language="C#" Value="public abstract System.ServiceModel.Channels.MessageHeaders Headers { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Channels.MessageHeaders Headers" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.MessageHeaders</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.Message" /> can have zero or more headers that are used as an extension mechanism to pass information in messages that is application-specific. You can use <see cref="P:System.ServiceModel.Channels.Message.Headers" /> to add message headers to a message by calling the <see cref="M:System.ServiceModel.Channels.MessageHeaders.Add(System.ServiceModel.Channels.MessageHeader)" /> method.</para>
          <para>indigo1 provides a number of predefined message headers, as shown in the following table. </para>
          <list type="table">
            <listheader>
              <item>
                <term>
                  <para>Header Name</para>
                </term>
                <description>
                  <para>Contains the header name.</para>
                </description>
              </item>
            </listheader>
            <item>
              <term>
                <para>To</para>
              </term>
              <description>
                <para>Contains the role that the message is targeting.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Action</para>
              </term>
              <description>
                <para>Provides a description of how the message should be processed.</para>
              </description>
            </item>
            <item>
              <term>
                <para>FaultTo</para>
              </term>
              <description>
                <para>Contains the address of the node to which faults should be sent.</para>
              </description>
            </item>
            <item>
              <term>
                <para>From</para>
              </term>
              <description>
                <para>Contains the address of the node that sent the message.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Request </para>
              </term>
              <description>
                <para>Indicates whether the message is a request. </para>
              </description>
            </item>
            <item>
              <term>
                <para>MessageID </para>
              </term>
              <description>
                <para>Contains the unique ID of the message. </para>
              </description>
            </item>
            <item>
              <term>
                <para>RelatesTo </para>
              </term>
              <description>
                <para>Contains the IDs of messages that are related to this message. </para>
              </description>
            </item>
            <item>
              <term>
                <para>ReplyTo </para>
              </term>
              <description>
                <para>Contains the address of the node to which a reply should be sent for a request. </para>
              </description>
            </item>
          </list>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, gets the headers of the message. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="IsDisposed">
      <MemberSignature Language="C#" Value="protected bool IsDisposed { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance bool IsDisposed" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns a value that indicates whether the <see cref="T:System.ServiceModel.Channels.Message" /> is disposed. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="IsEmpty">
      <MemberSignature Language="C#" Value="public virtual bool IsEmpty { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance bool IsEmpty" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns a value that indicates whether the <see cref="T:System.ServiceModel.Channels.Message" /> is empty. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="IsFault">
      <MemberSignature Language="C#" Value="public virtual bool IsFault { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance bool IsFault" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets a value that indicates whether this message generates any SOAP faults.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="OnBodyToString">
      <MemberSignature Language="C#" Value="protected virtual void OnBodyToString (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnBodyToString(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the message body is converted to a string.</para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryWriter" /> that is used to convert the message body to a string. </param>
      </Docs>
    </Member>
    <Member MemberName="OnClose">
      <MemberSignature Language="C#" Value="protected virtual void OnClose ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnClose() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the message is closing.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="OnCreateBufferedCopy">
      <MemberSignature Language="C#" Value="protected virtual System.ServiceModel.Channels.MessageBuffer OnCreateBufferedCopy (int maxBufferSize);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance class System.ServiceModel.Channels.MessageBuffer OnCreateBufferedCopy(int32 maxBufferSize) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.MessageBuffer</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="maxBufferSize" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when a message buffer is created to store this message.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> object for the newly created message copy.</para>
        </returns>
        <param name="maxBufferSize">
          <attribution license="cc4" from="Microsoft" modified="false" />The maximum size of the buffer to be created.</param>
      </Docs>
    </Member>
    <Member MemberName="OnGetBody&lt;T&gt;">
      <MemberSignature Language="C#" Value="protected virtual T OnGetBody&lt;T&gt; (System.Xml.XmlDictionaryReader reader);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance !!T OnGetBody&lt;T&gt;(class System.Xml.XmlDictionaryReader reader) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>T</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="T" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="reader" Type="System.Xml.XmlDictionaryReader" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the body of the message is retrieved.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> that represents the body of the message.</para>
        </returns>
        <param name="reader">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryReader)" /> object used to read the body of the message.</param>
        <typeparam name="T">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the message body.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="OnGetBodyAttribute">
      <MemberSignature Language="C#" Value="protected virtual string OnGetBodyAttribute (string localName, string ns);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance string OnGetBodyAttribute(string localName, string ns) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="localName" Type="System.String" />
        <Parameter Name="ns" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the attributes of the message body is retrieved.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The attributes of the message body.</para>
        </returns>
        <param name="localName">
          <attribution license="cc4" from="Microsoft" modified="false" />The local name of the XML node.</param>
        <param name="ns">
          <attribution license="cc4" from="Microsoft" modified="false" />The namespace to which this XML element belongs.</param>
      </Docs>
    </Member>
    <Member MemberName="OnGetReaderAtBodyContents">
      <MemberSignature Language="C#" Value="protected virtual System.Xml.XmlDictionaryReader OnGetReaderAtBodyContents ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance class System.Xml.XmlDictionaryReader OnGetReaderAtBodyContents() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Xml.XmlDictionaryReader</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when an XML dictionary reader that accesses the body content of this message is retrieved.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Xml.XmlDictionaryReader" /> object that accesses the body content of this message.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="OnWriteBodyContents">
      <MemberSignature Language="C#" Value="protected abstract void OnWriteBodyContents (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnWriteBodyContents(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the message body is written to an XML file.</para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryWriter" /> that is used to write this message body to an XML file.</param>
      </Docs>
    </Member>
    <Member MemberName="OnWriteMessage">
      <MemberSignature Language="C#" Value="protected virtual void OnWriteMessage (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnWriteMessage(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the entire message is written to an XML file.</para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryWriter" /> that is used to write this message to an XML file.</param>
      </Docs>
    </Member>
    <Member MemberName="OnWriteStartBody">
      <MemberSignature Language="C#" Value="protected virtual void OnWriteStartBody (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnWriteStartBody(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the start body is written to an XML file.</para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryWriter" /> that is used to write the start body to an XML file.</param>
      </Docs>
    </Member>
    <Member MemberName="OnWriteStartEnvelope">
      <MemberSignature Language="C#" Value="protected virtual void OnWriteStartEnvelope (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnWriteStartEnvelope(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the start envelope is written to an XML file.</para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryWriter" /> that is used to write the start envelope to an XML file.</param>
      </Docs>
    </Member>
    <Member MemberName="OnWriteStartHeaders">
      <MemberSignature Language="C#" Value="protected virtual void OnWriteStartHeaders (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnWriteStartHeaders(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Called when the start header is written to an XML file.</para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />A <see cref="T:System.Xml.XmlDictionaryWriter" /> that is used to write the start header to an XML file.</param>
      </Docs>
    </Member>
    <Member MemberName="Properties">
      <MemberSignature Language="C#" Value="public abstract System.ServiceModel.Channels.MessageProperties Properties { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Channels.MessageProperties Properties" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.MessageProperties</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Because information in headers is transmitted on the wire, an entity that examines a header must support the underlying version(s) of the protocols used by the header. However, properties provide a more version-independent way of annotating a message.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, gets a set of processing-level annotations to the message. </para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="State">
      <MemberSignature Language="C#" Value="public System.ServiceModel.Channels.MessageState State { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance valuetype System.ServiceModel.Channels.MessageState State" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.MessageState</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Because the body of a <see cref="T:System.ServiceModel.Channels.Message" /> object is a stream, it can only be read or written once. This is enforced by maintaining the current state of the <see cref="T:System.ServiceModel.Channels.Message" /> object. A <see cref="T:System.ServiceModel.Channels.Message" /> object can be read, written, or copied when in the <see cref="F:System.ServiceModel.Channels.MessageState.Created" /> state. Other states are <see cref="F:System.ServiceModel.Channels.MessageState.Read" />, <see cref="F:System.ServiceModel.Channels.MessageState.Written" /> and <see cref="F:System.ServiceModel.Channels.MessageState.Copied" />, which means that the respective action has been performed already once. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the current state of this <see cref="T:System.ServiceModel.Channels.Message" />.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="System.IDisposable.Dispose">
      <MemberSignature Language="C#" Value="void IDisposable.Dispose ();" />
      <MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.IDisposable.Dispose() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Call this method when you are finished using the <see cref="T:System.ServiceModel.Channels.Message" />. This method leaves the <see cref="T:System.ServiceModel.Channels.Message" /> in an unusable state. After calling this method, you must release all references to the <see cref="T:System.ServiceModel.Channels.Message" /> so the garbage collector can reclaim the memory that the <see cref="T:System.ServiceModel.Channels.Message" /> resided in. </para>
          <block subset="none" type="note">
            <para>Always call this method before you release your last reference to the <see cref="T:System.ServiceModel.Channels.Message" />. Otherwise, the resources it is using are not freed until the garbage collector calls the <see cref="T:System.ServiceModel.Channels.Message" /> object's Finalize method.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Closes all the resources used by this message. This method cannot be inherited.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="C#" Value="public override string ToString ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string ToString() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns a string that represents the current <see cref="T:System.ServiceModel.Channels.Message" /> instance. </para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The string representation of the current <see cref="T:System.ServiceModel.Channels.Message" /> instance. </para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="Version">
      <MemberSignature Language="C#" Value="public abstract System.ServiceModel.Channels.MessageVersion Version { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Channels.MessageVersion Version" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.ServiceModel.Channels.MessageVersion</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This value is immutable for the message. There are two possible values for the version: <see cref="P:System.ServiceModel.Channels.MessageVersion.Soap11" /> and <see cref="P:System.ServiceModel.Channels.MessageVersion.Soap12" /> that correspond to SOAP 1.1 and SOAP 1.2 respectively. </para>
          <para>Knowing the underlying SOAP version is important because the structure of <see cref="T:System.ServiceModel.Channels.Message" /> is firmly correlated with that of a SOAP message. </para>
          <block subset="none" type="note">
            <para>Inheritors must note that when overridden in a derived class, this method returns a <see cref="T:System.ServiceModel.Channels.MessageVersion" /> object for the SOAP version of the message.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When overridden in a derived class, gets the SOAP version of the message.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="WriteBody">
      <MemberSignature Language="C#" Value="public void WriteBody (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteBody(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method writes the body contents as well as the start and end tags of the element. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Writes the body element using the specified <see cref="T:System.Xml.XmlDictionaryWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XmlDictionaryWriter" /> object to be used to write the body element.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteBody">
      <MemberSignature Language="C#" Value="public void WriteBody (System.Xml.XmlWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteBody(class System.Xml.XmlWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlWriter" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method writes the body contents as well as the start and end tags of the element. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the message body using the specified <see cref="T:System.Xml.XmlWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Xml.XmlWriter" /> object to be used to write the body of the message.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteBodyContents">
      <MemberSignature Language="C#" Value="public void WriteBodyContents (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteBodyContents(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the body content using the specified <see cref="T:System.Xml.XmlDictionaryWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XmlDictionaryWriter" /> object to be used to write the body element.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteMessage">
      <MemberSignature Language="C#" Value="public void WriteMessage (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteMessage(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method serializes the entire message. Once a message is written, it cannot be rewritten unless a <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> instance exists for the message. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the entire message using the specified <see cref="T:System.Xml.XmlDictionaryWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XmlDictionaryWriter" /> object to be used to write the message.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteMessage">
      <MemberSignature Language="C#" Value="public void WriteMessage (System.Xml.XmlWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteMessage(class System.Xml.XmlWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlWriter" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method serializes the entire message. Once a message is written, it cannot be rewritten unless there is a <see cref="T:System.ServiceModel.Channels.MessageBuffer" /> for the message. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the entire message using the specified <see cref="T:System.Xml.XmlWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Xml.XmlWriter" /> object to be used to write the entire message.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteStartBody">
      <MemberSignature Language="C#" Value="public void WriteStartBody (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteStartBody(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the start body of the message using the specified <see cref="T:System.Xml.XmlDictionaryWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XmlDictionaryWriter" /> object to be used to write the start body.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteStartBody">
      <MemberSignature Language="C#" Value="public void WriteStartBody (System.Xml.XmlWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteStartBody(class System.Xml.XmlWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the start body of the message using the specified <see cref="T:System.Xml.XmlDictionaryWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Xml.XmlDictionaryWriter" /> object to be used to write the start body of the message.</param>
      </Docs>
    </Member>
    <Member MemberName="WriteStartEnvelope">
      <MemberSignature Language="C#" Value="public void WriteStartEnvelope (System.Xml.XmlDictionaryWriter writer);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void WriteStartEnvelope(class System.Xml.XmlDictionaryWriter writer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="writer" Type="System.Xml.XmlDictionaryWriter" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Serializes the start envelope using the specified <see cref="T:System.Xml.XmlDictionaryWriter" />. </para>
        </summary>
        <param name="writer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XmlDictionaryWriter" /> object to be used to write the start envelope.</param>
      </Docs>
    </Member>
  </Members>
</Type>