ClientBase<TChannel> Classe

Définition

Fournit l’implémentation de base utilisée pour créer des objets clients Windows Communication Foundation (WCF) qui peuvent appeler des services.

generic <typename TChannel>
 where TChannel : classpublic ref class ClientBase abstract : System::ServiceModel::ICommunicationObject
generic <typename TChannel>
 where TChannel : classpublic ref class ClientBase abstract : IAsyncDisposable, IDisposable, System::ServiceModel::ICommunicationObject
generic <typename TChannel>
 where TChannel : classpublic ref class ClientBase abstract : IDisposable, System::ServiceModel::ICommunicationObject
public abstract class ClientBase<TChannel> : System.ServiceModel.ICommunicationObject where TChannel : class
public abstract class ClientBase<TChannel> : IAsyncDisposable, IDisposable, System.ServiceModel.ICommunicationObject where TChannel : class
public abstract class ClientBase<TChannel> : IDisposable, System.ServiceModel.ICommunicationObject where TChannel : class
type ClientBase<'Channel (requires 'Channel : null)> = class
    interface ICommunicationObject
type ClientBase<'Channel (requires 'Channel : null)> = class
    interface IDisposable
    interface ICommunicationObject
    interface IAsyncDisposable
type ClientBase<'Channel (requires 'Channel : null)> = class
    interface ICommunicationObject
    interface IDisposable
type ClientBase<'Channel (requires 'Channel : null)> = class
    interface IDisposable
    interface ICommunicationObject
Public MustInherit Class ClientBase(Of TChannel)
Implements ICommunicationObject
Public MustInherit Class ClientBase(Of TChannel)
Implements IAsyncDisposable, ICommunicationObject, IDisposable
Public MustInherit Class ClientBase(Of TChannel)
Implements ICommunicationObject, IDisposable

Paramètres de type

TChannel

Canal à utiliser pour se connecter au service.

Héritage
ClientBase<TChannel>
Dérivé
Implémente

Exemples

L’exemple de code suivant montre comment l’outil Utilitaire de métadonnées ServiceModel (Svcutil.exe) étend la ClientBase<TChannel> classe pour créer une classe cliente WCF.

public partial class SampleServiceClient : System.ServiceModel.ClientBase<ISampleService>, ISampleService
{

    public SampleServiceClient()
    {
    }

    public SampleServiceClient(string endpointConfigurationName) :
            base(endpointConfigurationName)
    {
    }

    public SampleServiceClient(string endpointConfigurationName, string remoteAddress) :
            base(endpointConfigurationName, remoteAddress)
    {
    }

    public SampleServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
            base(endpointConfigurationName, remoteAddress)
    {
    }

    public SampleServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
            base(binding, remoteAddress)
    {
    }

    public string SampleMethod(string msg)
    {
        return base.Channel.SampleMethod(msg);
    }
}
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")> _
Partial Public Class SampleServiceClient
    Inherits System.ServiceModel.ClientBase(Of ISampleService)
    Implements ISampleService

    Public Sub New()
    End Sub

    Public Sub New(ByVal endpointConfigurationName As String)
        MyBase.New(endpointConfigurationName)
    End Sub

    Public Sub New(ByVal endpointConfigurationName As String, ByVal remoteAddress As String)
        MyBase.New(endpointConfigurationName, remoteAddress)
    End Sub

    Public Sub New(ByVal endpointConfigurationName As String, _
                   ByVal remoteAddress As System.ServiceModel.EndpointAddress)
        MyBase.New(endpointConfigurationName, remoteAddress)
    End Sub

    Public Sub New(ByVal binding As System.ServiceModel.Channels.Binding, _
                   ByVal remoteAddress As System.ServiceModel.EndpointAddress)
        MyBase.New(binding, remoteAddress)
    End Sub

    Public Function SampleMethod(ByVal msg As String) As String Implements ISampleService.SampleMethod
        Return MyBase.Channel.SampleMethod(msg)
    End Function
End Class

Remarques

Étendez la ClientBase<TChannel> classe pour créer un objet client WCF personnalisé qui peut être utilisé pour se connecter à un service. En règle générale, la classe de base du client WCF est étendue par un outil tel que l’outil Utilitaire de métadonnées ServiceModel (Svcutil.exe) en votre nom. Pour obtenir un exemple, consultez la section Exemple.

La ClientBase<TChannel> classe peut être utilisée rapidement et facilement par les développeurs qui préfèrent les objets à l’utilisation des interfaces et de la System.ServiceModel.ChannelFactory<TChannel> classe. Dans tous les cas, cette classe encapsule ou expose les méthodes et les fonctionnalités de la System.ServiceModel.ChannelFactory<TChannel> classe et de l’interface System.ServiceModel.IClientChannel .

Comme lors de l’utilisation de la System.ServiceModel.ServiceHost classe, vous pouvez créer la classe et modifier le point de terminaison, la fabrique de canaux ou les informations de sécurité avant d’effectuer des appels ou des appels Open. Pour plus d’informations, consultez vue d’ensemble du client WCF et accès aux services à l’aide d’un client WCF.

Remarque spéciale pour les utilisateurs C++ managés dérivant de cette classe :

  • Placez votre code de nettoyage dans (On)(Begin)Close (et/ou OnAbort), et non dans un destructeur.
  • Évitez les destructeurs : ils provoquent la génération IDisposableautomatique du compilateur.
  • Évitez les membres non référencés : ils peuvent provoquer la génération IDisposableautomatique du compilateur.
  • Évitez les finaliseurs ; mais si vous en incluez un, vous devez supprimer l’avertissement et l’appel SuppressFinalize(Object) de build et le finaliseur lui-même de (On)(Begin)Close (et/ou OnAbort) pour émuler ce qui aurait été le comportement généré automatiquement IDisposable .

Constructeurs

Nom Description
ClientBase<TChannel>()

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide du point de terminaison cible par défaut à partir du fichier de configuration de l’application.

ClientBase<TChannel>(Binding, EndpointAddress)

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide de la liaison et de l’adresse cible spécifiées.

ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress)

Initialise une nouvelle instance de la classe ClientBase<TChannel>.

ClientBase<TChannel>(InstanceContext, ServiceEndpoint)

Initialise une nouvelle instance de la classe à l’aide ClientBase<TChannel> des objets et InstanceContext des objets spécifiésServiceEndpoint.

ClientBase<TChannel>(InstanceContext, String, EndpointAddress)

Initialise une nouvelle instance de la classe ClientBase<TChannel>.

ClientBase<TChannel>(InstanceContext, String, String)

Initialise une nouvelle instance de la classe ClientBase<TChannel>.

ClientBase<TChannel>(InstanceContext, String)

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide des informations de configuration du service de rappel et du point de terminaison spécifiés.

ClientBase<TChannel>(InstanceContext)

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide de l’objet callbackInstance de rappel dans une conversation duplex.

ClientBase<TChannel>(ServiceEndpoint)

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide du .ServiceEndpoint

ClientBase<TChannel>(String, EndpointAddress)

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide de l’adresse cible et des informations de point de terminaison spécifiées.

ClientBase<TChannel>(String, String)

Initialise une nouvelle instance de la classe ClientBase<TChannel>.

ClientBase<TChannel>(String)

Initialise une nouvelle instance de la ClientBase<TChannel> classe à l’aide des informations de configuration spécifiées dans le fichier de configuration de l’application par endpointConfigurationName.

Propriétés

Nom Description
CacheSetting

Obtient ou définit le paramètre de cache.

Channel

Obtient le canal interne utilisé pour envoyer des messages à différents points de terminaison de service configurés.

ChannelFactory

Obtient l’objet sous-jacent ChannelFactory<TChannel> .

ClientCredentials

Obtient les informations d’identification du client utilisées pour appeler une opération.

Endpoint

Obtient le point de terminaison cible du service auquel le client WCF peut se connecter.

InnerChannel

Obtient l’implémentation sous-jacente IClientChannel .

State

Obtient l’état actuel de l’objet ClientBase<TChannel> .

Méthodes

Nom Description
Abort()

Fait passer immédiatement l’objet ClientBase<TChannel> de son état actuel à l’état fermé.

Close()

Fait passer l’objet ClientBase<TChannel> de son état actuel à l’état fermé.

CloseAsync()

Fournit l’implémentation de base utilisée pour créer des objets clients Windows Communication Foundation (WCF) qui peuvent appeler des services.

CreateChannel()

Retourne un nouveau canal vers le service.

DisplayInitializationUI()

Indique au canal interne d’afficher une interface utilisateur si une interface utilisateur est nécessaire pour initialiser le canal avant de l’utiliser.

Equals(Object)

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

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

Réplique le comportement du mot clé par défaut en C#.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
InvokeAsync(ClientBase<TChannel>.BeginOperationDelegate, Object[], ClientBase<TChannel>.EndOperationDelegate, SendOrPostCallback, Object)

Fournit la prise en charge de l’implémentation du modèle asynchrone basé sur les événements. Pour plus d’informations sur ce modèle, consultez Vue d’ensemble du modèle asynchrone basé sur les événements.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
Open()

Fait passer l’objet ClientBase<TChannel> de l’état créé à l’état ouvert.

ToString()

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

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
IAsyncDisposable.DisposeAsync()

Fournit l’implémentation de base utilisée pour créer des objets clients Windows Communication Foundation (WCF) qui peuvent appeler des services.

ICommunicationObject.BeginClose(AsyncCallback, Object)

Commence une opération asynchrone pour fermer le ClientBase<TChannel>.

ICommunicationObject.BeginClose(TimeSpan, AsyncCallback, Object)

Commence une opération asynchrone pour fermer le ClientBase<TChannel> délai d’expiration spécifié.

ICommunicationObject.BeginOpen(AsyncCallback, Object)

Commence une opération asynchrone pour ouvrir l’objet ClientBase<TChannel> .

ICommunicationObject.BeginOpen(TimeSpan, AsyncCallback, Object)

Commence une opération asynchrone pour ouvrir l’objet ClientBase<TChannel> dans un intervalle de temps spécifié.

ICommunicationObject.Close()

Provoque la transition d’un objet de communication de son état actuel vers l’état fermé.

ICommunicationObject.Close(TimeSpan)

Fait passer l’objet ClientBase<TChannel> de son état actuel à l’état fermé.

ICommunicationObject.Closed

Gestionnaire d’événements appelé lorsque l’objet ClientBase<TChannel> a passé de son état actuel à l’état fermé.

ICommunicationObject.Closing

Gestionnaire d’événements appelé lorsque l’objet ClientBase<TChannel> passe de son état actuel à l’état fermé.

ICommunicationObject.EndClose(IAsyncResult)

Termine une opération asynchrone pour fermer l’objet ClientBase<TChannel> .

ICommunicationObject.EndOpen(IAsyncResult)

Termine une opération asynchrone pour ouvrir l’objet ClientBase<TChannel> .

ICommunicationObject.Faulted

Gestionnaire d’événements appelé lorsqu’une erreur se produit lors de l’exécution d’une opération sur l’objet ClientBase<TChannel> .

ICommunicationObject.Open()

Provoque la transition d’un objet de communication entre l’état créé et l’état ouvert.

ICommunicationObject.Open(TimeSpan)

Fait passer l’objet ClientBase<TChannel> de l’état créé à l’état ouvert dans un intervalle de temps spécifié.

ICommunicationObject.Opened

Gestionnaire d’événements appelé lorsque l’objet ClientBase<TChannel> passe de l’état créé à l’état ouvert.

ICommunicationObject.Opening

Gestionnaire d’événements appelé lorsque l’objet ClientBase<TChannel> passe de l’état créé à l’état ouvert.

IDisposable.Dispose()

Implémentation explicite de la Dispose() méthode.

S’applique à