Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
1009 lines (963 sloc) 63.7 KB
<Type Name="ChannelFactory" FullName="System.ServiceModel.ChannelFactory">
<TypeSignature Language="C#" Value="public abstract class ChannelFactory : System.ServiceModel.Channels.CommunicationObject, IDisposable, System.ServiceModel.Channels.IChannelFactory" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit ChannelFactory extends System.ServiceModel.Channels.CommunicationObject implements class System.IDisposable, class System.ServiceModel.Channels.IChannelFactory, class System.ServiceModel.ICommunicationObject" />
<TypeSignature Language="DocId" Value="T:System.ServiceModel.ChannelFactory" />
<TypeSignature Language="VB.NET" Value="Public MustInherit Class ChannelFactory&#xA;Inherits CommunicationObject&#xA;Implements IChannelFactory, IDisposable" />
<TypeSignature Language="C++ CLI" Value="public ref class ChannelFactory abstract : System::ServiceModel::Channels::CommunicationObject, IDisposable, System::ServiceModel::Channels::IChannelFactory" />
<TypeSignature Language="F#" Value="type ChannelFactory = class&#xA; inherit CommunicationObject&#xA; interface IChannelFactory&#xA; interface ICommunicationObject&#xA; interface IDisposable" />
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ServiceModel.Channels.CommunicationObject</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.IDisposable</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.ServiceModel.Channels.IChannelFactory</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.ServiceModel.ICommunicationObject</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<summary>Creates and manages the channels that are used by clients to send messages to service endpoints.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Channel factories that implement the <xref:System.ServiceModel.Channels.IChannelFactory> interface and their associated channels are generally used by the initiators of a communication pattern. Listener factories that implement the <xref:System.ServiceModel.Channels.IChannelListener> interface and their associated listeners provide the mechanisms with which channels are accepted for communications.
This class is not part of the channel model, but of the service model. The <xref:System.ServiceModel.ChannelFactory.CreateFactory%2A> method provides the means to create an <xref:System.ServiceModel.Channels.IChannelFactory> for a service endpoint. Use it to construct a client that hooks up to an interface contract on the service without using metadata or policy.
> [!NOTE]
> Setting `ChannelFactory.Credentials.Windows.AllowedImpersonationLevel` to `TokenImpersonationLevel.Anonymous` always results in an anonymous logon regardless of impersonation level.
Special note for Managed C++ users deriving from this class:
- Put your cleanup code in (On)(Begin)Close (and/or OnAbort), not in a destructor.
- Avoid destructors; they cause the compiler to auto-generate <xref:System.IDisposable>.
- Avoid non-reference members; they can cause the compiler to auto-generate <xref:System.IDisposable>.
- Avoid using a finalizer; but if you include one, you should suppress the build warning and call <xref:System.GC.SuppressFinalize%28System.Object%29> and the finalizer itself from (On)(Begin)Close (and/or OnAbort) to emulate what would have been the auto-generated <xref:System.IDisposable> behavior.
When adding behaviors programmatically, the behavior is added to the appropriate `Behaviors` property on the <xref:System.ServiceModel.ChannelFactory> prior to the creation of any channel. See the example section for a code sample.
## Examples
The following code example shows how to insert programmatically a client behavior prior to the creation of the channel object by the factory.
[!code-csharp[ChannelFactoryBehaviors#10](~/samples/snippets/csharp/VS_Snippets_CFX/channelfactorybehaviors/cs/client.cs#10)]
[!code-vb[ChannelFactoryBehaviors#10](~/samples/snippets/visualbasic/VS_Snippets_CFX/channelfactorybehaviors/vb/client.vb#10)]
]]></format>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected ChannelFactory ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.#ctor" />
<MemberSignature Language="VB.NET" Value="Protected Sub New ()" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; ChannelFactory();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.ServiceModel.ChannelFactory" /> class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ApplyConfiguration">
<MemberSignature Language="C#" Value="protected virtual void ApplyConfiguration (string configurationName);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void ApplyConfiguration(string configurationName) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.ApplyConfiguration(System.String)" />
<MemberSignature Language="VB.NET" Value="Protected Overridable Sub ApplyConfiguration (configurationName As String)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; virtual void ApplyConfiguration(System::String ^ configurationName);" />
<MemberSignature Language="F#" Value="abstract member ApplyConfiguration : string -&gt; unit&#xA;override this.ApplyConfiguration : string -&gt; unit" Usage="channelFactory.ApplyConfiguration configurationName" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="configurationName" Type="System.String" />
</Parameters>
<Docs>
<param name="configurationName">The name of the configuration file.</param>
<summary>Initializes the channel factory with the behaviors provided by a specified configuration file and with those in the service endpoint of the channel factory.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If `configurationName` is `null`, only the behaviors specified in the service endpoint are loaded. If the wildcard, "*", is used, any endpoint configuration in the client configuration file is used, but only if there is precisely one. Otherwise an exception is thrown. Any other value for the `configurationName`, including the empty string "", matches the endpoint configuration with the same name. See the [WCF Client Configuration](~/docs/framework/wcf/feature-details/client-configuration.md) topic for a discussion of the client configuration.
]]></format>
</remarks>
<exception cref="T:System.InvalidOperationException">The service endpoint of the channel factory is <see langword="null" />.</exception>
</Docs>
</Member>
<Member MemberName="CreateDescription">
<MemberSignature Language="C#" Value="protected abstract System.ServiceModel.Description.ServiceEndpoint CreateDescription ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance class System.ServiceModel.Description.ServiceEndpoint CreateDescription() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.CreateDescription" />
<MemberSignature Language="VB.NET" Value="Protected MustOverride Function CreateDescription () As ServiceEndpoint" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; abstract System::ServiceModel::Description::ServiceEndpoint ^ CreateDescription();" />
<MemberSignature Language="F#" Value="abstract member CreateDescription : unit -&gt; System.ServiceModel.Description.ServiceEndpoint" Usage="channelFactory.CreateDescription " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.Description.ServiceEndpoint</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>When implemented in a derived class, creates a description of the service endpoint associated with the channel factory.</summary>
<returns>The <see cref="T:System.ServiceModel.Description.ServiceEndpoint" /> associated with the channel factory.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="CreateFactory">
<MemberSignature Language="C#" Value="protected virtual System.ServiceModel.Channels.IChannelFactory CreateFactory ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance class System.ServiceModel.Channels.IChannelFactory CreateFactory() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.CreateFactory" />
<MemberSignature Language="VB.NET" Value="Protected Overridable Function CreateFactory () As IChannelFactory" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; virtual System::ServiceModel::Channels::IChannelFactory ^ CreateFactory();" />
<MemberSignature Language="F#" Value="abstract member CreateFactory : unit -&gt; System.ServiceModel.Channels.IChannelFactory&#xA;override this.CreateFactory : unit -&gt; System.ServiceModel.Channels.IChannelFactory" Usage="channelFactory.CreateFactory " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.Channels.IChannelFactory</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Builds the channel factory for the current endpoint of the factory.</summary>
<returns>An <see cref="T:System.ServiceModel.Channels.IChannelFactory" /> for the endpoint of the current factory.</returns>
<remarks>To be added.</remarks>
<exception cref="T:System.InvalidOperationException">The endpoint of the service that the factory channels connect to is <see langword="null" /> or the endpoint's binding is <see langword="null" /> or is missing the element with the configuration name specified.</exception>
</Docs>
</Member>
<Member MemberName="Credentials">
<MemberSignature Language="C#" Value="public System.ServiceModel.Description.ClientCredentials Credentials { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Description.ClientCredentials Credentials" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.ChannelFactory.Credentials" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Credentials As ClientCredentials" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::ServiceModel::Description::ClientCredentials ^ Credentials { System::ServiceModel::Description::ClientCredentials ^ get(); };" />
<MemberSignature Language="F#" Value="member this.Credentials : System.ServiceModel.Description.ClientCredentials" Usage="System.ServiceModel.ChannelFactory.Credentials" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.Description.ClientCredentials</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the credentials used by clients to communicate a service endpoint over the channels produced by the factory.</summary>
<value>The <see cref="T:System.ServiceModel.Description.ClientCredentials" /> used by clients if they are configured for the factory or if the endpoint is non-<see langword="null" /> and is in either the created or opening communication state; otherwise <see langword="null" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.ServiceModel.Description.ClientCredentials> object is stored as a type of endpoint behavior and can be accessed through the <xref:System.ServiceModel.Description.ServiceEndpoint.Behaviors%2A> property.
The <xref:System.ServiceModel.ChannelFactory.OnOpened%2A> method initializes a read-only copy of the <xref:System.ServiceModel.Description.ClientCredentials> object for the factory.
The <xref:System.ServiceModel.Description.ClientCredentials> object is used by the <xref:System.ServiceModel.ClientBase%601> class (or a class that derives from this class) to create the proxy objects that can call services. The <xref:System.ServiceModel.Description.ClientCredentials> object is also accessible through the <xref:System.ServiceModel.ClientBase%601.ClientCredentials%2A> property.
> [!NOTE]
> Setting `ChannelFactory.Credentials.Windows.AllowedImpersonationLevel` to `TokenImpersonationLevel.Anonymous` always results in an anonymous logon regardless of impersonation level.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="DefaultCloseTimeout">
<MemberSignature Language="C#" Value="protected internal override TimeSpan DefaultCloseTimeout { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.TimeSpan DefaultCloseTimeout" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.ChannelFactory.DefaultCloseTimeout" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides ReadOnly Property DefaultCloseTimeout As TimeSpan" />
<MemberSignature Language="C++ CLI" Value="protected public:&#xA; virtual property TimeSpan DefaultCloseTimeout { TimeSpan get(); };" />
<MemberSignature Language="F#" Value="member this.DefaultCloseTimeout : TimeSpan" Usage="System.ServiceModel.ChannelFactory.DefaultCloseTimeout" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.TimeSpan</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the default interval of time provided for a close operation to complete.</summary>
<value>The default <see cref="T:System.TimeSpan" /> that specifies how long the close operation has to complete before timing out.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Gets the default service model close time-out if both the <xref:System.ServiceModel.Description.ServiceEndpoint> and <xref:System.ServiceModel.Description.ServiceEndpoint.Binding%2A> are `null`. The default value for the service model close time-out is 1 minute. Otherwise, the value is set to the <xref:System.ServiceModel.Channels.Binding.CloseTimeout%2A> value associated with the <xref:System.ServiceModel.Description.ServiceEndpoint>.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="DefaultOpenTimeout">
<MemberSignature Language="C#" Value="protected internal override TimeSpan DefaultOpenTimeout { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.TimeSpan DefaultOpenTimeout" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.ChannelFactory.DefaultOpenTimeout" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides ReadOnly Property DefaultOpenTimeout As TimeSpan" />
<MemberSignature Language="C++ CLI" Value="protected public:&#xA; virtual property TimeSpan DefaultOpenTimeout { TimeSpan get(); };" />
<MemberSignature Language="F#" Value="member this.DefaultOpenTimeout : TimeSpan" Usage="System.ServiceModel.ChannelFactory.DefaultOpenTimeout" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.TimeSpan</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the default interval of time provided for an open operation to complete.</summary>
<value>The default <see cref="T:System.TimeSpan" /> that specifies how long the open operation has to complete before timing out.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Gets the default service model open time-out if both the <xref:System.ServiceModel.Description.ServiceEndpoint> and <xref:System.ServiceModel.Description.ServiceEndpoint.Binding%2A> are `null`. The default value for the service model open time-out is 1 minute. Otherwise, the value is set to the <xref:System.ServiceModel.Channels.Binding.OpenTimeout%2A> value associated with the <xref:System.ServiceModel.Description.ServiceEndpoint>.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Endpoint">
<MemberSignature Language="C#" Value="public System.ServiceModel.Description.ServiceEndpoint Endpoint { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.Description.ServiceEndpoint Endpoint" />
<MemberSignature Language="DocId" Value="P:System.ServiceModel.ChannelFactory.Endpoint" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property Endpoint As ServiceEndpoint" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::ServiceModel::Description::ServiceEndpoint ^ Endpoint { System::ServiceModel::Description::ServiceEndpoint ^ get(); };" />
<MemberSignature Language="F#" Value="member this.Endpoint : System.ServiceModel.Description.ServiceEndpoint" Usage="System.ServiceModel.ChannelFactory.Endpoint" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.ServiceModel.Description.ServiceEndpoint</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the service endpoint to which the channels produced by the factory connect.</summary>
<value>The <see cref="T:System.ServiceModel.Description.ServiceEndpoint" /> to which the channels produced by the factory connect.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="EnsureOpened">
<MemberSignature Language="C#" Value="protected void EnsureOpened ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig instance void EnsureOpened() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.EnsureOpened" />
<MemberSignature Language="VB.NET" Value="Protected Sub EnsureOpened ()" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; void EnsureOpened();" />
<MemberSignature Language="F#" Value="member this.EnsureOpened : unit -&gt; unit" Usage="channelFactory.EnsureOpened " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Opens the current channel factory if it is not yet opened.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Before opening the channel factory, checks that it is not <xref:System.ServiceModel.CommunicationState.Closed>, <xref:System.ServiceModel.CommunicationState.Closing>, or <xref:System.ServiceModel.CommunicationState.Opened>.
]]></format>
</remarks>
<exception cref="T:System.ObjectDisposedException">The current factory is either closing or closed and so cannot be opened.</exception>
</Docs>
</Member>
<Member MemberName="GetProperty&lt;T&gt;">
<MemberSignature Language="C#" Value="public T GetProperty&lt;T&gt; () where T : class;" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance !!T GetProperty&lt;class T&gt;() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.GetProperty``1" />
<MemberSignature Language="VB.NET" Value="Public Function GetProperty(Of T As Class) () As T" />
<MemberSignature Language="C++ CLI" Value="public:&#xA;generic &lt;typename T&gt;&#xA; where T : class virtual T GetProperty();" />
<MemberSignature Language="F#" Value="abstract member GetProperty : unit -&gt; 'T (requires 'T : null)&#xA;override this.GetProperty : unit -&gt; 'T (requires 'T : null)" Usage="channelFactory.GetProperty " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.ServiceModel.Channels.IChannelFactory.GetProperty``1</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>T</ReturnType>
</ReturnValue>
<TypeParameters>
<TypeParameter Name="T">
<Constraints>
<ParameterAttribute>ReferenceTypeConstraint</ParameterAttribute>
</Constraints>
</TypeParameter>
</TypeParameters>
<Parameters />
<Docs>
<typeparam name="T">The typed object for which the method is querying.</typeparam>
<summary>Returns the typed object requested, if present, from the appropriate layer in the channel stack, or <see langword="null" /> if not present.</summary>
<returns>The typed object <paramref name="T" /> requested if it is present or <see langword="null" /> if it is not.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use this to retrieve capabilities, requirements and parameters from the channel stack. If a channel factory supports returning the requested object, it returns it. If not, it delegates the call down to the next level in the stack. If it gets to the bottom of the stack and no channel factory supported the requested object, then the method returns `null`.
`T` is typically some channel interface that the channel factory can support. If, for example, `GetProperty<IChannelListener>` is called on a duplex channel factory, it returns the underlying listener.
]]></format>
</remarks>
</Docs>
</Member>
<MemberGroup MemberName="InitializeEndpoint">
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Initializes the service endpoint of the channel factory.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You must have an address to initialize an endpoint, but can have just the binding or configuration instead of the full endpoint.
]]></format>
</remarks>
</Docs>
</MemberGroup>
<Member MemberName="InitializeEndpoint">
<MemberSignature Language="C#" Value="protected void InitializeEndpoint (System.ServiceModel.Description.ServiceEndpoint endpoint);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig instance void InitializeEndpoint(class System.ServiceModel.Description.ServiceEndpoint endpoint) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.InitializeEndpoint(System.ServiceModel.Description.ServiceEndpoint)" />
<MemberSignature Language="VB.NET" Value="Protected Sub InitializeEndpoint (endpoint As ServiceEndpoint)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; void InitializeEndpoint(System::ServiceModel::Description::ServiceEndpoint ^ endpoint);" />
<MemberSignature Language="F#" Value="member this.InitializeEndpoint : System.ServiceModel.Description.ServiceEndpoint -&gt; unit" Usage="channelFactory.InitializeEndpoint endpoint" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="endpoint" Type="System.ServiceModel.Description.ServiceEndpoint" />
</Parameters>
<Docs>
<param name="endpoint">The <see cref="T:System.ServiceModel.Description.ServiceEndpoint" /> to initialize the channel factory with.</param>
<summary>Initializes the service endpoint of the channel factory with a specified endpoint.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use <xref:System.ServiceModel.ChannelFactory.InitializeEndpoint%28System.ServiceModel.Channels.Binding%2CSystem.ServiceModel.EndpointAddress%29> if you have just the binding. Use <xref:System.ServiceModel.ChannelFactory.InitializeEndpoint%28System.String%2CSystem.ServiceModel.EndpointAddress%29> if you have the configuration.
]]></format>
</remarks>
<exception cref="T:System.ArgumentNullException">
<paramref name="endpoint" /> is <see langword="null" />.</exception>
</Docs>
</Member>
<Member MemberName="InitializeEndpoint">
<MemberSignature Language="C#" Value="protected void InitializeEndpoint (System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress address);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig instance void InitializeEndpoint(class System.ServiceModel.Channels.Binding binding, class System.ServiceModel.EndpointAddress address) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.InitializeEndpoint(System.ServiceModel.Channels.Binding,System.ServiceModel.EndpointAddress)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; void InitializeEndpoint(System::ServiceModel::Channels::Binding ^ binding, System::ServiceModel::EndpointAddress ^ address);" />
<MemberSignature Language="F#" Value="member this.InitializeEndpoint : System.ServiceModel.Channels.Binding * System.ServiceModel.EndpointAddress -&gt; unit" Usage="channelFactory.InitializeEndpoint (binding, address)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="binding" Type="System.ServiceModel.Channels.Binding" />
<Parameter Name="address" Type="System.ServiceModel.EndpointAddress" />
</Parameters>
<Docs>
<param name="binding">The <see cref="T:System.ServiceModel.Channels.Binding" /> with which to initialize the channel factory.</param>
<param name="address">The <see cref="T:System.ServiceModel.EndpointAddress" /> with which to initialize the channel factory.</param>
<summary>Initializes the service endpoint of the channel factory with a specified binding and address.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use <xref:System.ServiceModel.ChannelFactory.InitializeEndpoint%28System.String%2CSystem.ServiceModel.EndpointAddress%29> if you have the configuration.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="InitializeEndpoint">
<MemberSignature Language="C#" Value="protected void InitializeEndpoint (string configurationName, System.ServiceModel.EndpointAddress address);" FrameworkAlternate="netcore-1.0;netcore-1.1;netcore-2.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.8;dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-uwp-10.0;dotnet-plat-ext-3.0" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig instance void InitializeEndpoint(string configurationName, class System.ServiceModel.EndpointAddress address) cil managed" FrameworkAlternate="netcore-1.0;netcore-1.1;netcore-2.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.8;dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-uwp-10.0;dotnet-plat-ext-3.0" />
<MemberSignature Language="VB.NET" Value="Protected Sub InitializeEndpoint (configurationName As String, address As EndpointAddress)" FrameworkAlternate="netcore-1.0;netcore-1.1;netcore-2.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.8;dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-uwp-10.0;dotnet-plat-ext-3.0" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; void InitializeEndpoint(System::String ^ configurationName, System::ServiceModel::EndpointAddress ^ address);" FrameworkAlternate="netcore-1.0;netcore-1.1;netcore-2.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.8;dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-uwp-10.0;dotnet-plat-ext-3.0" />
<MemberSignature Language="C#" Value="protected void InitializeEndpoint (string configurationName, System.ServiceModel.EndpointAddress remoteAddress);" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig instance void InitializeEndpoint(string configurationName, class System.ServiceModel.EndpointAddress remoteAddress) cil managed" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.InitializeEndpoint(System.String,System.ServiceModel.EndpointAddress)" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
<MemberSignature Language="VB.NET" Value="Protected Sub InitializeEndpoint (configurationName As String, remoteAddress As EndpointAddress)" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; void InitializeEndpoint(System::String ^ configurationName, System::ServiceModel::EndpointAddress ^ remoteAddress);" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
<MemberSignature Language="F#" Value="member this.InitializeEndpoint : string * System.ServiceModel.EndpointAddress -&gt; unit" Usage="channelFactory.InitializeEndpoint (configurationName, address)" FrameworkAlternate="dotnet-plat-ext-2.1;dotnet-plat-ext-2.2" />
<MemberSignature Language="F#" Value="member this.InitializeEndpoint : string * System.ServiceModel.EndpointAddress -&gt; unit" Usage="channelFactory.InitializeEndpoint (configurationName, remoteAddress)" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.InitializeEndpoint(System.String,System.ServiceModel.EndpointAddress)" FrameworkAlternate="xamarinandroid-7.1;dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-plat-ext-3.0;dotnet-uwp-10.0" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="configurationName" Type="System.String" Index="0" />
<Parameter Name="address" Type="System.ServiceModel.EndpointAddress" Index="1" FrameworkAlternate="dotnet-plat-ext-2.1;dotnet-plat-ext-2.2;dotnet-plat-ext-3.0;dotnet-uwp-10.0;netcore-1.0;netcore-1.1;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8" />
<Parameter Name="remoteAddress" Type="System.ServiceModel.EndpointAddress" Index="1" FrameworkAlternate="xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0" />
</Parameters>
<Docs>
<param name="configurationName">The name of the configuration file used to initialize the channel factory.</param>
<param name="address">The <see cref="T:System.ServiceModel.EndpointAddress" /> with which to initialize the channel factory.</param>
<param name="remoteAddress">To be added.</param>
<summary>Initializes the service endpoint of the channel factory with a specified address and configuration.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use <xref:System.ServiceModel.ChannelFactory.InitializeEndpoint%28System.ServiceModel.Channels.Binding%2CSystem.ServiceModel.EndpointAddress%29> if you have just the binding.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnAbort">
<MemberSignature Language="C#" Value="protected override void OnAbort ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnAbort() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnAbort" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnAbort ()" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnAbort();" />
<MemberSignature Language="F#" Value="override this.OnAbort : unit -&gt; unit" Usage="channelFactory.OnAbort " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Terminates the inner channel factory of the current channel factory.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.ServiceModel.ChannelFactory.OnAbort%2A> method is called on a factory after it transitions to the closing state if the <xref:System.ServiceModel.Channels.CommunicationObject.Abort%2A> method is invoked.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnBeginClose">
<MemberSignature Language="C#" Value="protected override IAsyncResult OnBeginClose (TimeSpan timeout, AsyncCallback callback, object state);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance class System.IAsyncResult OnBeginClose(valuetype System.TimeSpan timeout, class System.AsyncCallback callback, object state) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnBeginClose(System.TimeSpan,System.AsyncCallback,System.Object)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Function OnBeginClose (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override IAsyncResult ^ OnBeginClose(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);" />
<MemberSignature Language="F#" Value="override this.OnBeginClose : TimeSpan * AsyncCallback * obj -&gt; IAsyncResult" Usage="channelFactory.OnBeginClose (timeout, callback, state)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.IAsyncResult</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="timeout" Type="System.TimeSpan" />
<Parameter Name="callback" Type="System.AsyncCallback" />
<Parameter Name="state" Type="System.Object" />
</Parameters>
<Docs>
<param name="timeout">The <see cref="T:System.TimeSpan" /> that specifies how long the operation has to complete before timing out.</param>
<param name="callback">The <see cref="T:System.AsyncCallback" /> delegate that receives the notification of the asynchronous operation completion.</param>
<param name="state">An object, specified by the application, that contains state information associated with the asynchronous operation.</param>
<summary>Begins an asynchronous close operation on the inner channel factory of the current channel factory that has a state object associated with it.</summary>
<returns>The <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This method receives notification, through a callback, of the identity of the event handler for the operation. The operation is not complete until either the asynchronous close on the inner channel factory returns or the time-out occurs.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnBeginOpen">
<MemberSignature Language="C#" Value="protected override IAsyncResult OnBeginOpen (TimeSpan timeout, AsyncCallback callback, object state);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance class System.IAsyncResult OnBeginOpen(valuetype System.TimeSpan timeout, class System.AsyncCallback callback, object state) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnBeginOpen(System.TimeSpan,System.AsyncCallback,System.Object)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Function OnBeginOpen (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override IAsyncResult ^ OnBeginOpen(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);" />
<MemberSignature Language="F#" Value="override this.OnBeginOpen : TimeSpan * AsyncCallback * obj -&gt; IAsyncResult" Usage="channelFactory.OnBeginOpen (timeout, callback, state)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.IAsyncResult</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="timeout" Type="System.TimeSpan" />
<Parameter Name="callback" Type="System.AsyncCallback" />
<Parameter Name="state" Type="System.Object" />
</Parameters>
<Docs>
<param name="timeout">The <see cref="T:System.TimeSpan" /> that specifies how long the operation has to complete before timing out.</param>
<param name="callback">The <see cref="T:System.AsyncCallback" /> delegate that receives the notification of the asynchronous operation completion.</param>
<param name="state">An object, specified by the application, that contains state information associated with the asynchronous operation.</param>
<summary>Begins an asynchronous open operation on the inner channel factory of the current channel factory that has a state object associated with it.</summary>
<returns>The <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This method receives notification, through a callback, of the identity of the event handler for the operation. The operation is not complete until either the asynchronous open on the inner channel factory returns or the time-out occurs.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnClose">
<MemberSignature Language="C#" Value="protected override void OnClose (TimeSpan timeout);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnClose(valuetype System.TimeSpan timeout) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnClose(System.TimeSpan)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnClose (timeout As TimeSpan)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnClose(TimeSpan timeout);" />
<MemberSignature Language="F#" Value="override this.OnClose : TimeSpan -&gt; unit" Usage="channelFactory.OnClose timeout" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="timeout" Type="System.TimeSpan" />
</Parameters>
<Docs>
<param name="timeout">The <see cref="T:System.TimeSpan" /> that specifies how long the operation has to complete before timing out.</param>
<summary>Calls close on the inner channel factory with a specified time-out for the completion of the operation.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnEndClose">
<MemberSignature Language="C#" Value="protected override void OnEndClose (IAsyncResult result);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnEndClose(class System.IAsyncResult result) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnEndClose(System.IAsyncResult)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnEndClose (result As IAsyncResult)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnEndClose(IAsyncResult ^ result);" />
<MemberSignature Language="F#" Value="override this.OnEndClose : IAsyncResult -&gt; unit" Usage="channelFactory.OnEndClose result" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="result" Type="System.IAsyncResult" />
</Parameters>
<Docs>
<param name="result">The <see cref="T:System.IAsyncResult" /> returned by a call to the <see cref="M:System.ServiceModel.ChannelFactory.OnBeginClose(System.TimeSpan,System.AsyncCallback,System.Object)" /> method.</param>
<summary>Completes an asynchronous close operation on the inner channel factory of the current channel factory.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnEndOpen">
<MemberSignature Language="C#" Value="protected override void OnEndOpen (IAsyncResult result);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnEndOpen(class System.IAsyncResult result) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnEndOpen(System.IAsyncResult)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnEndOpen (result As IAsyncResult)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnEndOpen(IAsyncResult ^ result);" />
<MemberSignature Language="F#" Value="override this.OnEndOpen : IAsyncResult -&gt; unit" Usage="channelFactory.OnEndOpen result" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="result" Type="System.IAsyncResult" />
</Parameters>
<Docs>
<param name="result">The <see cref="T:System.IAsyncResult" /> returned by a call to the <see cref="M:System.ServiceModel.ChannelFactory.OnBeginOpen(System.TimeSpan,System.AsyncCallback,System.Object)" /> method.</param>
<summary>Completes an asynchronous open operation on the inner channel factory of the current channel factory.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnOpen">
<MemberSignature Language="C#" Value="protected override void OnOpen (TimeSpan timeout);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnOpen(valuetype System.TimeSpan timeout) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnOpen(System.TimeSpan)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnOpen (timeout As TimeSpan)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnOpen(TimeSpan timeout);" />
<MemberSignature Language="F#" Value="override this.OnOpen : TimeSpan -&gt; unit" Usage="channelFactory.OnOpen timeout" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="timeout" Type="System.TimeSpan" />
</Parameters>
<Docs>
<param name="timeout">The <see cref="T:System.TimeSpan" /> that specifies how long the open operation has to complete before timing out.</param>
<summary>Calls open on the inner channel factory of the current channel factory with a specified time-out for the completion of the operation.</summary>
<remarks>To be added.</remarks>
<exception cref="T:System.InvalidOperationException">The inner channel of the current channel is <see langword="null" />.</exception>
</Docs>
</Member>
<Member MemberName="OnOpened">
<MemberSignature Language="C#" Value="protected override void OnOpened ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnOpened() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnOpened" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnOpened ()" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnOpened();" />
<MemberSignature Language="F#" Value="override this.OnOpened : unit -&gt; unit" Usage="channelFactory.OnOpened " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Initializes a read-only copy of the <see cref="T:System.ServiceModel.Description.ClientCredentials" /> object for the channel factory.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Overrides and invokes the <xref:System.ServiceModel.Channels.CommunicationObject.OnOpened%2A> method, which is called during the transition of an object into the opened state. The <xref:System.ServiceModel.Description.ClientCredentials> object is stored as a type of endpoint behavior and can be accessed through the <xref:System.ServiceModel.Description.ServiceEndpoint.Behaviors%2A> property.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnOpening">
<MemberSignature Language="C#" Value="protected override void OnOpening ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnOpening() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.OnOpening" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnOpening ()" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnOpening();" />
<MemberSignature Language="F#" Value="override this.OnOpening : unit -&gt; unit" Usage="channelFactory.OnOpening " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Builds the inner channel factory for the current channel.</summary>
<remarks>To be added.</remarks>
<exception cref="T:System.InvalidOperationException">The inner channel factory for the channel factory is <see langword="null" />.</exception>
</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" />
<MemberSignature Language="DocId" Value="M:System.ServiceModel.ChannelFactory.System#IDisposable#Dispose" />
<MemberSignature Language="VB.NET" Value="Sub Dispose () Implements IDisposable.Dispose" />
<MemberSignature Language="C++ CLI" Value=" virtual void System.IDisposable.Dispose() = IDisposable::Dispose;" />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.IDisposable.Dispose</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.ServiceModel.Primitives</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>4.2.0.0</AssemblyVersion>
<AssemblyVersion>4.5.0.1</AssemblyVersion>
<AssemblyVersion>4.5.0.3</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Closes the current channel factory.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>
You can’t perform that action at this time.