127 lines
7.0 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="utf-8"?>
<Type Name="MessageEncoderFactory" FullName="System.ServiceModel.Channels.MessageEncoderFactory">
<TypeSignature Language="C#" Value="public abstract class MessageEncoderFactory" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit MessageEncoderFactory extends System.Object" />
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Encoding is the process of transforming a message into a sequence of bytes. Decoding is the reverse process. </para>
<para>Use this class if you want to implement a custom message encoder. To implement your own custom message encoder, you must provide custom implementations of the following three abstract base classes:</para>
<list type="bullet">
<item>
<para>
<see cref="T:System.ServiceModel.Channels.MessageEncodingBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.MessageEncoderFactory" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.MessageEncoder" />
</para>
</item>
</list>
<para>Override the <see cref="P:System.ServiceModel.Channels.MessageEncoderFactory.Encoder" /> to return an instance of your custom <see cref="T:System.ServiceModel.Channels.MessageEncoder" />. Then wire up your custom <see cref="T:System.ServiceModel.Channels.MessageEncoderFactory" /> to the binding element stack used to configure the service or client by overriding the <see cref="M:System.ServiceModel.Channels.MessageEncodingBindingElement.CreateMessageEncoderFactory" /> method to return an instance of this factory. For more information about custom encoders, see <format type="text/html"><a href="0f03c635-f3e7-4c5c-9463-3cb0135e221e">Custom Encoders</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An abstract base class that represents the factory for producing message encoders that can read messages from a stream and write them to a stream for various types of message encoding.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected MessageEncoderFactory ();" />
<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.MessageEncoderFactory" /> class. </para>
</summary>
</Docs>
</Member>
<Member MemberName="CreateSessionEncoder">
<MemberSignature Language="C#" Value="public virtual System.ServiceModel.Channels.MessageEncoder CreateSessionEncoder ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.ServiceModel.Channels.MessageEncoder CreateSessionEncoder() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.Channels.MessageEncoder</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A session-based message encoder can keep track the individual messages that form part of a conversation that consists of all the messages exchanged between two endpoints that are part of a session.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Returns a message encoder that can be used to correlate messages in session-based exchanges.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.ServiceModel.Channels.MessageEncoder" /> that is used in session-based exchanges of messages.</para>
</returns>
</Docs>
</Member>
<Member MemberName="Encoder">
<MemberSignature Language="C#" Value="public abstract System.ServiceModel.Channels.MessageEncoder Encoder { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Channels.MessageEncoder Encoder" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.Channels.MessageEncoder</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, gets the message encoder that is produced by the factory.</para>
</summary>
</Docs>
</Member>
<Member MemberName="MessageVersion">
<MemberSignature Language="C#" Value="public abstract System.ServiceModel.Channels.MessageVersion MessageVersion { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Channels.MessageVersion MessageVersion" />
<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>The message version can be set using the <see cref="P:System.ServiceModel.Channels.MessageEncodingBindingElement.MessageVersion" /> property. <see cref="T:System.ServiceModel.Channels.MessageVersion" /> is limited to using certain versions of SOAP and WS-Addressing and is not extensible. So if these versions are not to be used, this property should be overridden to return <see cref="P:System.ServiceModel.Channels.MessageVersion.None" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, gets the message version that is used by the encoders produced by the factory to encode messages.</para>
</summary>
</Docs>
</Member>
</Members>
</Type>