ChannelFactoryBase<TChannel> Class

Provides a common base implementation for channel factories on the client to create channels of a specified type connected to a specified address.

Namespace:  System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public abstract class ChannelFactoryBase<TChannel> : ChannelFactoryBase, 
	IChannelFactory<TChannel>, IChannelFactory, ICommunicationObject

Type Parameters

TChannel

The type of channel the factory produces.

The ChannelFactoryBase<TChannel> type exposes the following members.

  NameDescription
Protected methodChannelFactoryBase<TChannel>()Initializes a new instance of the ChannelFactoryBase<TChannel> class.
Protected methodChannelFactoryBase<TChannel>(IDefaultCommunicationTimeouts)Initializes a new instance of the ChannelFactoryBase<TChannel> class with the default communication timeouts specified.
Top

  NameDescription
Protected propertyDefaultCloseTimeoutGets the default interval of time provided for a close operation to complete. (Inherited from ChannelFactoryBase.)
Protected propertyDefaultOpenTimeoutGets the default interval of time provided for an open operation to complete. (Inherited from ChannelFactoryBase.)
Protected propertyDefaultReceiveTimeoutGets the default interval of time provided for a receive operation to complete. (Inherited from ChannelFactoryBase.)
Protected propertyDefaultSendTimeoutGets the default interval of time provided for a send operation to complete. (Inherited from ChannelFactoryBase.)
Protected propertyIsDisposedGets a value that indicates whether the communication object has been disposed. (Inherited from CommunicationObject.)
Public propertyStateGets a value that indicates the current state of the communication object. (Inherited from CommunicationObject.)
Protected propertyThisLockGets the mutually exclusive lock that protects the class instance during a state transition. (Inherited from CommunicationObject.)
Top

  NameDescription
Public methodAbortCauses a communication object to transition immediately from its current state into the closing state. (Inherited from CommunicationObject.)
Public methodBeginClose(AsyncCallback, Object)Begins an asynchronous operation to close a communication object. (Inherited from CommunicationObject.)
Public methodBeginClose(TimeSpan, AsyncCallback, Object)Begins an asynchronous operation to close a communication object with a specified timeout. (Inherited from CommunicationObject.)
Public methodBeginOpen(AsyncCallback, Object)Begins an asynchronous operation to close a communication object. (Inherited from CommunicationObject.)
Public methodBeginOpen(TimeSpan, AsyncCallback, Object)Begins an asynchronous operation to close a communication object within a specified interval of time. (Inherited from CommunicationObject.)
Public methodClose()Causes a communication object to transition from its current state into the closed state. (Inherited from CommunicationObject.)
Public methodClose(TimeSpan)Causes a communication object to transition from its current state into the closed state within a specified interval of time. (Inherited from CommunicationObject.)
Public methodCreateChannel(EndpointAddress)Creates a particular type of channel with a specified endpoint address.
Public methodCreateChannel(EndpointAddress, Uri)Creates a particular type of channel with specified transport and endpoint addresses.
Public methodEndCloseCompletes an asynchronous operation to close a communication object. (Inherited from CommunicationObject.)
Public methodEndOpenCompletes an asynchronous operation to open a communication object. (Inherited from CommunicationObject.)
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFaultCauses a communication object to transition from its current state into the faulted state. (Inherited from CommunicationObject.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Protected methodGetCommunicationObjectTypeGets the type of communication object. (Inherited from CommunicationObject.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetProperty<T>Returns the typed object requested, if present, from the appropriate layer in the channel stack. (Inherited from ChannelFactoryBase.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodOnAbortAborts each channel managed by the channel factory. (Overrides ChannelFactoryBase.OnAbort().)
Protected methodOnBeginCloseBegins an asynchronous operation to close all the channels associated with the channel factory within a specified interval of time. (Overrides ChannelFactoryBase.OnBeginClose(TimeSpan, AsyncCallback, Object).)
Protected methodOnBeginOpenWhen implemented in a derived class, inserts processing on a communication object after it transitions to the opening state due to the invocation of an asynchronous open operation. (Inherited from CommunicationObject.)
Protected methodOnCloseCloses all the channels associated with the channel factory within a specified interval of time. (Overrides ChannelFactoryBase.OnClose(TimeSpan).)
Protected methodOnClosedInvoked during the transition of a communication object into the closing state. (Inherited from CommunicationObject.)
Protected methodOnClosingInvoked during the transition of a communication object into the closing state. (Inherited from CommunicationObject.)
Protected methodOnCreateChannelWhen implemented in a derived class, provides an extensibility point when creating channels.
Protected methodOnEndCloseCompletes an asynchronous operation to close all the channels associated with the channel factory within a specified interval of time. (Overrides ChannelFactoryBase.OnEndClose(IAsyncResult).)
Protected methodOnEndOpenWhen implemented in a derived class, completes an asynchronous operation on the open of a communication object. (Inherited from CommunicationObject.)
Protected methodOnFaultedInserts processing on a communication object after it transitions to the faulted state due to the invocation of a synchronous fault operation. (Inherited from CommunicationObject.)
Protected methodOnOpenWhen implemented in a derived class, inserts processing on a communication object after it transitions into the opening state which must complete within a specified interval of time. (Inherited from CommunicationObject.)
Protected methodOnOpenedInvoked during the transition of a communication object into the opened state. (Inherited from CommunicationObject.)
Protected methodOnOpeningInvoked during the transition of a communication object into the opening state. (Inherited from CommunicationObject.)
Public methodOpen()Causes a communication object to transition from the created state into the opened state. (Inherited from CommunicationObject.)
Public methodOpen(TimeSpan)Causes a communication object to transition from the created state into the opened state within a specified interval of time. (Inherited from CommunicationObject.)
Protected methodThrowIfDisposedThrows an exception if the communication object is disposed. (Inherited from CommunicationObject.)
Protected methodThrowIfDisposedOrImmutableThrows an exception if the communication object the State property is not set to the Created state. (Inherited from CommunicationObject.)
Protected methodThrowIfDisposedOrNotOpenThrows an exception if the communication object is not in the Opened state. (Inherited from CommunicationObject.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Protected methodValidateCreateChannelConfirms that the channel factory is opened and ready to create channels.
Top

  NameDescription
Public eventClosedOccurs when a communication object transitions into the closed state. (Inherited from CommunicationObject.)
Public eventClosingOccurs when a communication object transitions into the closing state. (Inherited from CommunicationObject.)
Public eventFaultedOccurs when a communication object transitions into the faulted state. (Inherited from CommunicationObject.)
Public eventOpenedOccurs when a communication object transitions into the opened state. (Inherited from CommunicationObject.)
Public eventOpeningOccurs when a communication object transitions into the opening state. (Inherited from CommunicationObject.)
Top

  NameDescription
Explicit interface implemetationPrivate propertyIDefaultCommunicationTimeouts.CloseTimeoutGets the interval of time after which the close method, invoked by a communication object, times out. (Inherited from ChannelManagerBase.)
Explicit interface implemetationPrivate propertyIDefaultCommunicationTimeouts.OpenTimeoutGets the interval of time after which the open method, invoked by a communication object, times out. (Inherited from ChannelManagerBase.)
Explicit interface implemetationPrivate propertyIDefaultCommunicationTimeouts.ReceiveTimeoutGets the interval of time after which the receive method, invoked by a communication object, times out. (Inherited from ChannelManagerBase.)
Explicit interface implemetationPrivate propertyIDefaultCommunicationTimeouts.SendTimeoutGets the interval of time after which the send method, invoked by a communication object, times out. (Inherited from ChannelManagerBase.)
Top

The channels created by channel factories on the client are accepted on the server by channel listeners. Once the channel connection is established between client and service, they can communicate by exchanging messages.

The CreateChannel(EndpointAddress) uses the specified address as the destination for outgoing messages. The ServiceAddress.Uri property is used as the To header in the message. The ServiceReference.Via property is used as the physical destination to send messages to. This is typically the same as the ServiceAddress.Uri value.

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Show:
© 2015 Microsoft