ChannelBase Classe

Définition

Fournit l'implémentation de base des canaux personnalisés.

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 IChannel
    interface ICommunicationObject
    interface IDefaultCommunicationTimeouts
Public MustInherit Class ChannelBase
Inherits CommunicationObject
Implements IChannel, IDefaultCommunicationTimeouts
Héritage
Dérivé
Implémente

Remarques

Important

L’appel de méthodes de cette classe avec des données non approuvées est un risque de sécurité. Appelez les méthodes de cette classe avec des données approuvées uniquement. Pour plus d’informations, consultez Valider toutes les entrées.

La classe ChannelBase fournit une implémentation de la classe de base abstraite de l'interface IChannel. Elle requiert également que chaque canal soit associé à un gestionnaire de canal. Notez que le seul constructeur disponible pour créer des instances de ChannelBase requiert un paramètre d'entrée channelManager.

Les changements d'état sont gérés par héritage de l'implémentation CommunicationObject de l'ordinateur d'état.

ChannelBase reçoit ses délais d'attente de communication par défaut pour les opérations d'ouverture, de fermeture, d'envoi et de réception du ChannelManagerBase qui lui est associé.

ChannelBase se charge également du gestionnaire automatiquement. Outre l'exposition d'une référence au gestionnaire, la classe de base signale également au gestionnaire la création et la destruction de canaux. Toutefois, la référence au gestionnaire est valable uniquement jusqu'à la destruction du canal.

Même si vous utilisez la classe de base, vous devez toujours indiquer des comportements pour l'ouverture et la fermeture du canal. Les implémentations par défaut de ces méthodes ne fournissent pas d'informations utiles.

Vous devez également veiller à remplacer la méthode GetProperty à chaque fois que vous implémentez une fabrique de canaux. GetProperty est un excellent moyen de communiquer des informations le long de la pile de canaux sans avoir à savoir quels canaux se trouvent en dessous de vous, ni quels canaux au-dessus de vous pouvez effectuer des requêtes. Définissez des interfaces qui peuvent être interrogées pour obtenir des informations disponibles. Chaque fois que vous ne reconnaissez pas l'argument de type de GetProperty, déléguez au canal suivant dans la pile ou retournez la valeur null si vous créez un canal de transport au bas de la pile.

Constructeurs

ChannelBase(ChannelManagerBase)

Initialise une nouvelle instance de la classe ChannelBase.

Propriétés

DefaultCloseTimeout

Obtient l'intervalle de temps par défaut fourni pour terminer une opération de fermeture.

DefaultOpenTimeout

Obtient l'intervalle de temps par défaut fourni pour terminer une opération d'ouverture.

DefaultReceiveTimeout

Obtient l'intervalle de temps par défaut fourni pour terminer une opération de réception.

DefaultSendTimeout

Obtient l'intervalle de temps par défaut fourni pour terminer une opération d'envoi.

IsDisposed

Obtient une valeur qui indique si l'objet de communication a été supprimé.

(Hérité de CommunicationObject)
Manager

Obtient le gestionnaire de canal associé au canal actuel.

State

Obtient une valeur qui indique l'état actuel de l'objet de communication.

(Hérité de CommunicationObject)
ThisLock

Obtient le verrou mutuellement exclusif qui protège l'instance de classe pendant une transition d'état.

(Hérité de CommunicationObject)

Méthodes

Abort()

Provoque la transition immédiate d'un objet de communication de son état actuel à l'état de fermeture.

(Hérité de CommunicationObject)
BeginClose(AsyncCallback, Object)

Commence une opération asynchrone pour fermer un objet de communication.

(Hérité de CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Commence une opération asynchrone pour fermer un objet de communication avec un délai d'attente spécifié.

(Hérité de CommunicationObject)
BeginOpen(AsyncCallback, Object)

Commence une opération asynchrone pour ouvrir un objet de communication.

(Hérité de CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Commence une opération asynchrone pour ouvrir un objet de communication dans un intervalle de temps spécifié.

(Hérité de CommunicationObject)
Close()

Provoque la transition d'un objet de communication de son état actuel à l'état fermé.

(Hérité de CommunicationObject)
Close(TimeSpan)

Provoque la transition d'un objet de communication de son état actuel à l'état fermé dans un intervalle de temps spécifié.

(Hérité de CommunicationObject)
EndClose(IAsyncResult)

Termine une opération asynchrone pour fermer un objet de communication.

(Hérité de CommunicationObject)
EndOpen(IAsyncResult)

Termine une opération asynchrone pour ouvrir un objet de communication.

(Hérité de CommunicationObject)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
Fault()

Provoque la transition d'un objet de communication de son état actuel à l'état d'erreur.

(Hérité de CommunicationObject)
GetCommunicationObjectType()

Obtient le type d'objet de communication.

(Hérité de CommunicationObject)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetProperty<T>()

Retourne l'objet typé demandé, s'il existe, à partir de la couche appropriée de la pile de canaux.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnAbort()

Insère le traitement sur un objet de communication après la transition vers l’état de fermeture en raison de l’appel d’une opération d’abandon synchrone.

(Hérité de CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Insère le traitement après qu'un objet de communication est passé à l'état de fermeture en raison de l'appel d'une opération de fermeture asynchrone.

(Hérité de CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Insère le traitement sur un objet de communication après sa transition vers l'état d'ouverture en raison de l'appel d'une opération d'ouverture asynchrone.

(Hérité de CommunicationObject)
OnClose(TimeSpan)

Insère le traitement sur un objet de communication après sa transition vers l’état de fermeture en raison de l’appel d’une opération de fermeture synchrone.

(Hérité de CommunicationObject)
OnCloseAsync(TimeSpan)

Fournit l'implémentation de base des canaux personnalisés.

(Hérité de CommunicationObject)
OnClosed()

Utilise le suivi diagnostique pendant la transition à l'état de fermeture.

OnClosing()

Appelé pendant la transition d'un objet de communication à l'état de fermeture.

(Hérité de CommunicationObject)
OnEndClose(IAsyncResult)

Termine une opération asynchrone à la fermeture d'un objet de communication.

(Hérité de CommunicationObject)
OnEndOpen(IAsyncResult)

Termine une opération asynchrone à l'ouverture d'un objet de communication.

(Hérité de CommunicationObject)
OnFaulted()

Insère le traitement sur un objet de communication après sa transition vers l’état d’erreur en raison de l’appel d’une opération d’erreur synchrone.

(Hérité de CommunicationObject)
OnOpen(TimeSpan)

Insère le traitement sur un objet de communication après la transition vers l'état d'ouverture qui doit se terminer dans un intervalle de temps spécifié.

(Hérité de CommunicationObject)
OnOpenAsync(TimeSpan)

Fournit l'implémentation de base des canaux personnalisés.

(Hérité de CommunicationObject)
OnOpened()

Appelé pendant la transition d'un objet de communication à l'état ouvert.

(Hérité de CommunicationObject)
OnOpening()

Appelé pendant la transition d'un objet de communication à l'état d'ouverture.

(Hérité de CommunicationObject)
Open()

Provoque la transition d'un objet de communication de l'état créé à l'état ouvert.

(Hérité de CommunicationObject)
Open(TimeSpan)

Provoque la transition d'un objet de communication de l'état créé à l'état ouvert dans un intervalle de temps spécifié.

(Hérité de CommunicationObject)
ThrowIfDisposed()

Renvoie une exception si l'objet de communication est supprimé.

(Hérité de CommunicationObject)
ThrowIfDisposedOrImmutable()

Renvoie une exception si la propriété State de l'objet de communication n'a pas pour valeur l'état Created.

(Hérité de CommunicationObject)
ThrowIfDisposedOrNotOpen()

Renvoie une exception si l'objet de communication n'est pas dans l'état Opened.

(Hérité de CommunicationObject)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Événements

Closed

Se produit lorsqu'un objet de communication passe à l'état fermé.

(Hérité de CommunicationObject)
Closing

Se produit lorsqu'un objet de communication passe à l'état de fermeture.

(Hérité de CommunicationObject)
Faulted

Se produit lorsqu'un objet de communication passe à l'état d'erreur.

(Hérité de CommunicationObject)
Opened

Se produit lorsqu'un objet de communication passe à l'état ouvert.

(Hérité de CommunicationObject)
Opening

Se produit lorsqu'un objet de communication passe à l'état d'ouverture.

(Hérité de CommunicationObject)

Implémentations d’interfaces explicites

IAsyncCommunicationObject.CloseAsync(TimeSpan)

Fournit l'implémentation de base des canaux personnalisés.

(Hérité de CommunicationObject)
IAsyncCommunicationObject.OpenAsync(TimeSpan)

Fournit l'implémentation de base des canaux personnalisés.

(Hérité de CommunicationObject)
IDefaultCommunicationTimeouts.CloseTimeout

Obtient l'intervalle de temps au terme duquel la méthode de fermeture, appelée par un objet de communication, expire.

IDefaultCommunicationTimeouts.OpenTimeout

Obtient l'intervalle de temps au terme duquel la méthode d'ouverture, appelée par un objet de communication, expire.

IDefaultCommunicationTimeouts.ReceiveTimeout

Obtient l'intervalle de temps au terme duquel la méthode de réception, appelée par un objet de communication, expire.

IDefaultCommunicationTimeouts.SendTimeout

Obtient l'intervalle de temps au terme duquel la méthode d'envoi, appelée par un objet de communication, expire.

Méthodes d’extension

CloseHelperAsync(ICommunicationObject, TimeSpan)

Fournit l'implémentation de base des canaux personnalisés.

OpenHelperAsync(ICommunicationObject, TimeSpan)

Fournit l'implémentation de base des canaux personnalisés.

GetInternalCloseTimeout(CommunicationObject)

Fournit l'implémentation de base des canaux personnalisés.

S’applique à