ClientBase<TChannel> Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece a implementação base usada para criar objetos cliente do WCF (Windows Communication Foundation) que podem chamar serviços.
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
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
Parâmetros de tipo
- TChannel
O canal a ser usado para se conectar ao serviço.
- Herança
-
ClientBase<TChannel>
- Derivado
- Implementações
Exemplos
O exemplo de código a seguir mostra como a
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
Comentários
Estenda a classe ClientBase<TChannel> para criar um objeto de cliente WCF personalizado que pode ser usado para se conectar a um serviço. Normalmente, a classe base de cliente do WCF é estendida por uma ferramenta como a ferramenta ServiceModel Metadata Utility Tool (Svcutil.exe) em seu nome. Para obter um exemplo, consulte a seção Exemplo.
A classe ClientBase<TChannel> pode ser usada de forma rápida e fácil por desenvolvedores que preferem objetos ao uso das interfaces e da classe System.ServiceModel.ChannelFactory<TChannel>. Em todos os casos, essa classe encapsula ou expõe os métodos e a funcionalidade da classe System.ServiceModel.ChannelFactory<TChannel> e da interface System.ServiceModel.IClientChannel.
Como ao usar a classe System.ServiceModel.ServiceHost, você pode criar a classe e modificar o ponto de extremidade, a fábrica de canais ou as informações de segurança antes de fazer chamadas ou chamar Open. Para obter mais informações, consulte visão geral do cliente WCF e acessando serviços usando um cliente WCF.
Observação especial para usuários C++ gerenciados derivados dessa classe:
Coloque seu código de limpeza em (On)(Begin)Close (e/ou OnAbort), não em um destruidor.
Evite destruidores: eles fazem com que o compilador gere automaticamente IDisposable.
Evite membros não referenciados: eles podem fazer com que o compilador gere automaticamente IDisposable.
Evite finalizadores; mas, se você incluir um, deverá suprimir o aviso de build e chamar SuppressFinalize(Object) e o próprio finalizador de (On)(Begin)Close (e/ou OnAbort) para emular o que teria sido o comportamento de IDisposable gerado automaticamente.
Construtores
ClientBase<TChannel>() |
Inicializa uma nova instância da classe ClientBase<TChannel> usando o ponto de extremidade de destino padrão do arquivo de configuração do aplicativo. |
ClientBase<TChannel>(Binding, EndpointAddress) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando a associação e o endereço de destino especificados. |
ClientBase<TChannel>(InstanceContext) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando o |
ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress) |
Inicializa uma nova instância da classe ClientBase<TChannel>. |
ClientBase<TChannel>(InstanceContext, ServiceEndpoint) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando os objetos InstanceContext e ServiceEndpoint especificados. |
ClientBase<TChannel>(InstanceContext, String) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando as informações de configuração do serviço de retorno de chamada e do ponto de extremidade especificados. |
ClientBase<TChannel>(InstanceContext, String, EndpointAddress) |
Inicializa uma nova instância da classe ClientBase<TChannel>. |
ClientBase<TChannel>(InstanceContext, String, String) |
Inicializa uma nova instância da classe ClientBase<TChannel>. |
ClientBase<TChannel>(ServiceEndpoint) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando o ServiceEndpointespecificado. |
ClientBase<TChannel>(String) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando as informações de configuração especificadas no arquivo de configuração do aplicativo por |
ClientBase<TChannel>(String, EndpointAddress) |
Inicializa uma nova instância da classe ClientBase<TChannel> usando o endereço de destino e as informações do ponto de extremidade especificados. |
ClientBase<TChannel>(String, String) |
Inicializa uma nova instância da classe ClientBase<TChannel>. |
Propriedades
CacheSetting |
Obtém ou define a configuração de cache. |
Channel |
Obtém o canal interno usado para enviar mensagens para pontos de extremidade de serviço configurados de várias forma. |
ChannelFactory |
Obtém o objeto ChannelFactory<TChannel> subjacente. |
ClientCredentials |
Obtém as credenciais do cliente usadas para chamar uma operação. |
Endpoint |
Obtém o ponto de extremidade de destino para o serviço ao qual o cliente WCF pode se conectar. |
InnerChannel |
Obtém a implementação de IClientChannel subjacente. |
State |
Obtém o estado atual do objeto ClientBase<TChannel>. |
Métodos
Abort() |
Faz com que o objeto ClientBase<TChannel> faça a transição imediatamente de seu estado atual para o estado fechado. |
Close() |
Faz com que o objeto ClientBase<TChannel> faça a transição de seu estado atual para o estado fechado. |
CloseAsync() |
Fornece a implementação base usada para criar objetos cliente do WCF (Windows Communication Foundation) que podem chamar serviços. |
CreateChannel() |
Retorna um novo canal para o serviço. |
DisplayInitializationUI() |
Instrui o canal interno a exibir uma interface do usuário se for necessário inicializar o canal antes de usá-lo. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetDefaultValueForInitialization<T>() |
Replica o comportamento da palavra-chave padrão em C#. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
InvokeAsync(ClientBase<TChannel>.BeginOperationDelegate, Object[], ClientBase<TChannel>.EndOperationDelegate, SendOrPostCallback, Object) |
Fornece suporte para implementar o padrão assíncrono baseado em evento. Para obter mais informações sobre esse padrão, consulte Visão geral do padrão assíncrono baseado em evento. |
MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
Open() |
Faz com que o objeto ClientBase<TChannel> faça a transição do estado criado para o estado aberto. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
IAsyncDisposable.DisposeAsync() |
Fornece a implementação base usada para criar objetos cliente do WCF (Windows Communication Foundation) que podem chamar serviços. |
ICommunicationObject.BeginClose(AsyncCallback, Object) |
Inicia uma operação assíncrona para fechar o ClientBase<TChannel>. |
ICommunicationObject.BeginClose(TimeSpan, AsyncCallback, Object) |
Inicia uma operação assíncrona para fechar o ClientBase<TChannel> com um tempo limite especificado. |
ICommunicationObject.BeginOpen(AsyncCallback, Object) |
Inicia uma operação assíncrona para abrir o objeto ClientBase<TChannel>. |
ICommunicationObject.BeginOpen(TimeSpan, AsyncCallback, Object) |
Inicia uma operação assíncrona para abrir o objeto ClientBase<TChannel> dentro de um intervalo de tempo especificado. |
ICommunicationObject.Close() |
Faz com que um objeto de comunicação faça a transição de seu estado atual para o estado fechado. |
ICommunicationObject.Close(TimeSpan) |
Faz com que o objeto ClientBase<TChannel> faça a transição de seu estado atual para o estado fechado. |
ICommunicationObject.Closed |
O manipulador de eventos que é invocado quando o objeto ClientBase<TChannel> fez a transição de seu estado atual para o estado fechado. |
ICommunicationObject.Closing |
O manipulador de eventos que é invocado quando o objeto ClientBase<TChannel> faz a transição de seu estado atual para o estado fechado. |
ICommunicationObject.EndClose(IAsyncResult) |
Conclui uma operação assíncrona para fechar o objeto ClientBase<TChannel>. |
ICommunicationObject.EndOpen(IAsyncResult) |
Conclui uma operação assíncrona para abrir o objeto ClientBase<TChannel>. |
ICommunicationObject.Faulted |
O manipulador de eventos que é invocado quando ocorre uma falha durante a execução de uma operação no objeto ClientBase<TChannel>. |
ICommunicationObject.Open() |
Faz com que um objeto de comunicação faça a transição do estado criado para o estado aberto. |
ICommunicationObject.Open(TimeSpan) |
Faz com que o objeto ClientBase<TChannel> faça a transição do estado criado para o estado aberto dentro de um intervalo de tempo especificado. |
ICommunicationObject.Opened |
O manipulador de eventos que é invocado quando o objeto ClientBase<TChannel> faz a transição do estado criado para o estado aberto. |
ICommunicationObject.Opening |
O manipulador de eventos que é invocado quando o objeto ClientBase<TChannel> faz a transição do estado criado para o estado aberto. |
IDisposable.Dispose() |
Implementação explícita do método Dispose(). |
Métodos de Extensão
ConfigureAwait(IAsyncDisposable, Boolean) |
Configura como as esperas nas tarefas retornadas de um descartável assíncrono serão executadas. |