ClientBase<TChannel> Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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 |
| 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 |
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. |