ChannelBase Clase

Definición

Proporciona la implementación base para los canales personalizados.Provides the base implementation for custom channels.

public ref class ChannelBase abstract : System::ServiceModel::Channels::CommunicationObject, System::ServiceModel::Channels::IChannel, System::ServiceModel::IDefaultCommunicationTimeouts
public abstract class ChannelBase : System.ServiceModel.Channels.CommunicationObject, System.ServiceModel.Channels.IChannel, System.ServiceModel.IDefaultCommunicationTimeouts
type ChannelBase = class
    inherit CommunicationObject
    interface ICommunicationObject
    interface IChannel
    interface IDefaultCommunicationTimeouts
Public MustInherit Class ChannelBase
Inherits CommunicationObject
Implements IChannel, IDefaultCommunicationTimeouts
Herencia
Implementaciones

Comentarios

Importante

Llamar a métodos de esta clase con datos que no son de confianza supone un riesgo de seguridad.Calling methods from this class with untrusted data is a security risk. Llame a los métodos de esta clase solo con datos de confianza.Call the methods from this class only with trusted data. Para obtener más información, vea Data Validation (Validación de datos).For more information, see Data Validation.

La clase ChannelBase proporciona una implementación de clase base abstracta de la interfaz IChannel.The ChannelBase class provides an abstract base class implementation of the IChannel interface. También requiere que cada canal esté asociado a un administrador del canal.It also requires that each channel be associated with a channel manager. Tenga en cuenta que el único constructor disponible para crear instancias de ChannelBase requiere un parámetro de entrada channelManager.Note that the only constructor available for creating instances of ChannelBase requires a channelManager input parameter.

Los cambios del estado se administran heredando de la implementación CommunicationObject de la máquina de estados.State changes are managed by inheriting from the CommunicationObject implementation of the state machine.

ChannelBase obtiene sus tiempos de espera de la comunicación predeterminados para las operaciones de abrir, cerrar, enviar y recibir de los ChannelManagerBase asociados a él.The ChannelBase gets its default communication timeouts for the open, close, send and receive operations from the ChannelManagerBase associated with it.

ChannelBase también administra al administrador.The ChannelBase also manages the manager for you. Además de exponer una referencia al administrador, la clase base también notifica al administradorcuándo se crean y destruyen los canales.In addition to exposing a reference to the manager, the base class also notifies the manager when channels are created and destroyed. Pero la referencia al administrador sólo es buena hasta que se destruye el canal.But the reference to the manager is only good until the channel is destroyed.

Aun cuando utilice la clase base, debe proporcionar los comportamientos para abrir y cerrar el canal.Even if you do use the base class, you must still provide behaviors for opening and closing the channel. Las implementaciones predeterminadas de estos métodos no proporcionan información útil.The default implementations of these methods do not provide useful information.

También debe asegurarse de invalidar el método GetProperty cada vez que implemente un canal.You must also make sure to override GetProperty whenever you implement a channel. GetProperty es una forma excelente de transmitir información a lo largo de la pila de canales sin tener que saber qué canales están por debajo de usted o qué canales por encima puede realizar consultas.GetProperty is an excellent way to communicate information along the channel stack without having to know what channels are below you, or what channels above you may perform queries. Defina interfaces que se puedan consultar para obtener la información disponible.Define interfaces that can be queried for available information. Siempre que no reconozca el argumento de tipo para GetProperty, delegue al canal inmediatamente inferior en la pila o devuelva null si está creando un canal nuevo de transporte en la parte inferior de la pila.Whenever you do not recognize the type argument for GetProperty, delegate down to the next channel in the stack or return null if you are creating a new transport channel at the bottom of the stack.

Constructores

ChannelBase(ChannelManagerBase)

Inicializa una nueva instancia de la clase ChannelBase.Initializes a new instance of the ChannelBase class.

Propiedades

DefaultCloseTimeout

Obtiene el intervalo de tiempo predeterminado proporcionado para que se complete una operación de cierre.Gets the default interval of time provided for a close operation to complete.

DefaultOpenTimeout

Obtiene el intervalo de tiempo predeterminado proporcionado para que se complete una operación de apertura.Gets the default interval of time provided for an open operation to complete.

DefaultReceiveTimeout

Obtiene el intervalo de tiempo predeterminado proporcionado para que se complete una operación de recepción.Gets the default interval of time provided for a receive operation to complete.

DefaultSendTimeout

Obtiene el intervalo de tiempo predeterminado proporcionado para que se complete una operación de envío.Gets the default interval of time provided for a send operation to complete.

IsDisposed

Obtiene un valor que indica si el objeto de comunicación se ha eliminado.Gets a value that indicates whether the communication object has been disposed.

(Heredado de CommunicationObject)
Manager

Obtiene el administrador del canal que está asociado al canal actual.Gets the channel manager that is associated with the current channel.

State

Obtiene un valor que indica el estado actual del objeto de comunicación.Gets a value that indicates the current state of the communication object.

(Heredado de CommunicationObject)
ThisLock

Obtiene el bloqueo mutuamente excluyente que protege la instancia de clase durante una transición de estado.Gets the mutually exclusive lock that protects the class instance during a state transition.

(Heredado de CommunicationObject)

Métodos

Abort()

Provoca que un objeto de comunicación pase inmediatamente de su estado actual al estado de cierre.Causes a communication object to transition immediately from its current state into the closing state.

(Heredado de CommunicationObject)
BeginClose(AsyncCallback, Object)

Comienza una operación asincrónica para cerrar un objeto de comunicación.Begins an asynchronous operation to close a communication object.

(Heredado de CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Comienza una operación asincrónica para cerrar un objeto de comunicación con un tiempo de espera especificado.Begins an asynchronous operation to close a communication object with a specified timeout.

(Heredado de CommunicationObject)
BeginOpen(AsyncCallback, Object)

Comienza una operación asincrónica para abrir un objeto de comunicación.Begins an asynchronous operation to open a communication object.

(Heredado de CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Comienza una operación asincrónica para abrir un objeto de comunicación dentro de un intervalo de tiempo especificado.Begins an asynchronous operation to open a communication object within a specified interval of time.

(Heredado de CommunicationObject)
Close()

Provoca que un objeto de comunicación pase de su estado actual al estado cerrado.Causes a communication object to transition from its current state into the closed state.

(Heredado de CommunicationObject)
Close(TimeSpan)

Provoca que un objeto de comunicación pase su estado actual al estado cerrado dentro de un intervalo de tiempo especificado.Causes a communication object to transition from its current state into the closed state within a specified interval of time.

(Heredado de CommunicationObject)
EndClose(IAsyncResult)

Completa una operación asincrónica para cerrar un objeto de comunicación.Completes an asynchronous operation to close a communication object.

(Heredado de CommunicationObject)
EndOpen(IAsyncResult)

Completa una operación asincrónica para abrir un objeto de comunicación.Completes an asynchronous operation to open a communication object.

(Heredado de CommunicationObject)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
Fault()

Provoca que un objeto de comunicación pase de su estado actual al estado de error.Causes a communication object to transition from its current state into the faulted state.

(Heredado de CommunicationObject)
GetCommunicationObjectType()

Obtiene el tipo de objeto de comunicación.Gets the type of communication object.

(Heredado de CommunicationObject)
GetHashCode()

Sirve como función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetProperty<T>()

Devuelve el objeto con tipo solicitado del nivel adecuado de la pila de canales, si está presente.Returns the typed object requested, if present, from the appropriate layer in the channel stack.

GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
OnAbort()

Inserta el procesamiento en un objeto de comunicación después de que éste pase al estado de cierre debido a la invocación de una operación sincrónica de interrupción.Inserts processing on a communication object after it transitions to the closing state due to the invocation of a synchronous abort operation.

(Heredado de CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Inserta el procesamiento después de que un objeto de comunicación pase al estado de cierre debido a la invocación de una operación asincrónica de cierre.Inserts processing after a communication object transitions to the closing state due to the invocation of an asynchronous close operation.

(Heredado de CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Inserta el procesamiento en un objeto de comunicación después de que éste pase al estado de apertura debido a la invocación de una operación asincrónica de apertura.Inserts processing on a communication object after it transitions to the opening state due to the invocation of an asynchronous open operation.

(Heredado de CommunicationObject)
OnClose(TimeSpan)

Inserta el procesamiento en un objeto de comunicación después de que éste pase al estado de cierre debido a la invocación de una operación sincrónica de cierre.Inserts processing on a communication object after it transitions to the closing state due to the invocation of a synchronous close operation.

(Heredado de CommunicationObject)
OnClosed()

Utiliza traza de diagnóstico durante la transición al estado del cierre.Uses diagnostic tracing during the transition into the closing state.

OnClosing()

Se invoca durante la transición de un objeto de comunicación al estado de cierre.Invoked during the transition of a communication object into the closing state.

(Heredado de CommunicationObject)
OnEndClose(IAsyncResult)

Completa una operación asincrónica al cerrar un objeto de comunicación.Completes an asynchronous operation on the close of a communication object.

(Heredado de CommunicationObject)
OnEndOpen(IAsyncResult)

Completa una operación asincrónica al abrir un objeto de comunicación.Completes an asynchronous operation on the open of a communication object.

(Heredado de CommunicationObject)
OnFaulted()

Inserta el procesamiento en un objeto de comunicación después de que éste pase al estado de error debido a la invocación de una operación sincrónica de error.Inserts processing on a communication object after it transitions to the faulted state due to the invocation of a synchronous fault operation.

(Heredado de CommunicationObject)
OnOpen(TimeSpan)

Inserta el procesamiento en un objeto de comunicación después que éste pase al estado de apertura que debe completarse dentro de un intervalo de tiempo especificado.Inserts processing on a communication object after it transitions into the opening state which must complete within a specified interval of time.

(Heredado de CommunicationObject)
OnOpened()

Se invoca durante la transición de un objeto de comunicación al estado de abierto.Invoked during the transition of a communication object into the opened state.

(Heredado de CommunicationObject)
OnOpening()

Se invoca durante la transición de un objeto de comunicación al estado de abriendo.Invoked during the transition of a communication object into the opening state.

(Heredado de CommunicationObject)
Open()

Hace que un objeto de comunicación pase del estado creado al estado abierto.Causes a communication object to transition from the created state into the opened state.

(Heredado de CommunicationObject)
Open(TimeSpan)

Hace que un objeto de comunicación pase del estado creado al estado abierto dentro de un intervalo de tiempo especificado.Causes a communication object to transition from the created state into the opened state within a specified interval of time.

(Heredado de CommunicationObject)
ThrowIfDisposed()

Produce una excepción si se elimina el objeto de comunicación.Throws an exception if the communication object is disposed.

(Heredado de CommunicationObject)
ThrowIfDisposedOrImmutable()

Produce una excepción si en el objeto de comunicación la propiedad State no está establecida en el estado Created.Throws an exception if the communication object the State property is not set to the Created state.

(Heredado de CommunicationObject)
ThrowIfDisposedOrNotOpen()

Produce una excepción si el objeto de comunicación no está en el estado Opened.Throws an exception if the communication object is not in the Opened state.

(Heredado de CommunicationObject)
ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Eventos

Closed

Se produce cuando un objeto de comunicación realiza una transición al estado de cerrado.Occurs when a communication object transitions into the closed state.

(Heredado de CommunicationObject)
Closing

Se produce cuando un objeto de comunicación realiza una transición al estado de cerrando.Occurs when a communication object transitions into the closing state.

(Heredado de CommunicationObject)
Faulted

Se produce cuando un objeto de comunicación realiza una transición al estado de error.Occurs when a communication object transitions into the faulted state.

(Heredado de CommunicationObject)
Opened

Se produce cuando un objeto de comunicación realiza una transición al estado de abierto.Occurs when a communication object transitions into the opened state.

(Heredado de CommunicationObject)
Opening

Se produce cuando un objeto de comunicación realiza una transición al estado de abriendo.Occurs when a communication object transitions into the opening state.

(Heredado de CommunicationObject)

Implementaciones de interfaz explícitas

IDefaultCommunicationTimeouts.CloseTimeout

Obtiene el intervalo de tiempo después del cual el método de cierre, invocado por un objeto de comunicación, caduca.Gets the interval of time after which the close method, invoked by a communication object, times out.

IDefaultCommunicationTimeouts.OpenTimeout

Obtiene el intervalo de tiempo después del cual el método de apertura, invocado por un objeto de comunicación, caduca.Gets the interval of time after which the open method, invoked by a communication object, times out.

IDefaultCommunicationTimeouts.ReceiveTimeout

Obtiene el intervalo de tiempo después del cual el método de recepción, invocado por un objeto de comunicación, caduca.Gets the interval of time after which the receive method, invoked by a communication object, times out.

IDefaultCommunicationTimeouts.SendTimeout

Obtiene el intervalo de tiempo después del cual el método de envío, invocado por un objeto de comunicación, caduca.Gets the interval of time after which the send method, invoked by a communication object, times out.

Se aplica a