ClientBase<TChannel> Sınıf

Tanım

Hizmetleri çağırabilen Windows Communication Foundation (WCF) istemci nesneleri oluşturmak için kullanılan temel uygulamayı sağlar.

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

Tür Parametreleri

TChannel

Hizmete bağlanmak için kullanılacak kanal.

Devralma
ClientBase<TChannel>
Türetilmiş
Uygulamalar

Örnekler

Aşağıdaki kod örneği, ServiceModel Meta Veri Yardımcı Programı Aracı'nın (Svcutil.exe) wcf istemci sınıfı oluşturmak için ClientBase<TChannel> sınıfını nasıl genişletir gösterir.

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

Açıklamalar

ClientBase<TChannel> sınıfını genişleterek bir hizmete bağlanmak için kullanılabilecek özel bir WCF istemci nesnesi oluşturun. WcF istemci temel sınıfı genellikle sizin adınıza ServiceModel Meta Veri Yardımcı Programı Aracı (Svcutil.exe) gibi bir araç tarafından genişletilir. Örnek için Örnek bölümüne bakın.

ClientBase<TChannel> sınıfı, nesneleri arabirimlerin ve System.ServiceModel.ChannelFactory<TChannel> sınıfının kullanımına tercih eden geliştiriciler tarafından hızlı ve kolay bir şekilde kullanılabilir. Her durumda bu sınıf, System.ServiceModel.ChannelFactory<TChannel> sınıfının ve System.ServiceModel.IClientChannel arabiriminin yöntemlerini ve işlevselliğini sarmalar veya kullanıma sunar.

System.ServiceModel.ServiceHost sınıfını kullanırken olduğu gibi, herhangi bir çağrı yapmadan veya Opençağırmadan önce sınıfını oluşturabilir ve uç nokta, kanal fabrikası veya güvenlik bilgilerini değiştirebilirsiniz. Daha fazla bilgi için bkz. WCF İstemcisi'ne Genel Bakış ve WCF İstemcisiKullanarak Hizmetlere Erişim .

Bu sınıftan türetilen Yönetilen C++ kullanıcıları için özel not:

  • Temizleme kodunuzu bir yıkıcıya değil (On)(Begin)Close (ve/veya OnAbort) içine yerleştirin.

  • Yıkıcılardan kaçının: derleyicinin IDisposableotomatik olarak oluşturmasına neden olurlar.

  • Başvuru olmayan üyelerden kaçının: derleyicinin IDisposableotomatik olarak oluşturmasına neden olabilirler.

  • Sonlandırıcılardan kaçının; ancak bir tane eklerseniz, otomatik olarak oluşturulan IDisposable davranışına öykünmek için derleme uyarısını gizlemeniz ve SuppressFinalize(Object) ve sonlandırıcının kendisini (On)(Begin)Close (ve/veya OnAbort) öğesinden çağırmanız gerekir.

Oluşturucular

ClientBase<TChannel>()

Uygulama yapılandırma dosyasından varsayılan hedef uç noktayı kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(Binding, EndpointAddress)

Belirtilen bağlamayı ve hedef adresi kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(InstanceContext)

çift yönlü konuşmada geri çağırma nesnesi olarak callbackInstance kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress)

ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(InstanceContext, ServiceEndpoint)

Belirtilen InstanceContext ve ServiceEndpoint nesnelerini kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(InstanceContext, String)

Belirtilen geri çağırma hizmeti ve uç nokta yapılandırma bilgilerini kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(InstanceContext, String, EndpointAddress)

ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(InstanceContext, String, String)

ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(ServiceEndpoint)

Belirtilen ServiceEndpointkullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(String)

endpointConfigurationNametarafından uygulama yapılandırma dosyasında belirtilen yapılandırma bilgilerini kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(String, EndpointAddress)

Belirtilen hedef adresi ve uç nokta bilgilerini kullanarak ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

ClientBase<TChannel>(String, String)

ClientBase<TChannel> sınıfının yeni bir örneğini başlatır.

Özellikler

CacheSetting

Önbellek ayarını alır veya ayarlar.

Channel

Çeşitli yapılandırılmış hizmet uç noktalarına ileti göndermek için kullanılan iç kanalı alır.

ChannelFactory

Temel alınan ChannelFactory<TChannel> nesnesini alır.

ClientCredentials

bir işlemi çağırmak için kullanılan istemci kimlik bilgilerini alır.

Endpoint

WCF istemcisinin bağlanabileceği hizmetin hedef uç noktasını alır.

InnerChannel

Temel alınan IClientChannel uygulamasını alır.

State

ClientBase<TChannel> nesnesinin geçerli durumunu alır.

Yöntemler

Abort()

ClientBase<TChannel> nesnesinin geçerli durumundan kapalı duruma hemen geçmesine neden olur.

Close()

ClientBase<TChannel> nesnesinin geçerli durumundan kapalı duruma geçmesine neden olur.

CloseAsync()

Hizmetleri çağırabilen Windows Communication Foundation (WCF) istemci nesneleri oluşturmak için kullanılan temel uygulamayı sağlar.

CreateChannel()

Hizmete yeni bir kanal döndürür.

DisplayInitializationUI()

İç kanala, kanalı kullanmadan önce başlatmak için gerekliyse bir kullanıcı arabirimi görüntülemesini bildirir.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetDefaultValueForInitialization<T>()

C# dilinde varsayılan anahtar sözcüğün davranışını çoğaltır.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
InvokeAsync(ClientBase<TChannel>.BeginOperationDelegate, Object[], ClientBase<TChannel>.EndOperationDelegate, SendOrPostCallback, Object)

Olay tabanlı zaman uyumsuz deseni uygulamak için destek sağlar. Bu düzen hakkında daha fazla bilgi için bkz. Olay Tabanlı Zaman Uyumsuz Desene Genel Bakış.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
Open()

ClientBase<TChannel> nesnesinin oluşturulan durumdan açık duruma geçmesine neden olur.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IAsyncDisposable.DisposeAsync()

Hizmetleri çağırabilen Windows Communication Foundation (WCF) istemci nesneleri oluşturmak için kullanılan temel uygulamayı sağlar.

ICommunicationObject.BeginClose(AsyncCallback, Object)

ClientBase<TChannel>kapatmak için zaman uyumsuz bir işlem başlatır.

ICommunicationObject.BeginClose(TimeSpan, AsyncCallback, Object)

Belirtilen zaman aşımıyla ClientBase<TChannel> kapatmak için zaman uyumsuz bir işlem başlatır.

ICommunicationObject.BeginOpen(AsyncCallback, Object)

ClientBase<TChannel> nesnesini açmak için zaman uyumsuz bir işlem başlatır.

ICommunicationObject.BeginOpen(TimeSpan, AsyncCallback, Object)

Belirli bir zaman aralığı içinde ClientBase<TChannel> nesnesini açmak için zaman uyumsuz bir işlem başlatır.

ICommunicationObject.Close()

İletişim nesnesinin geçerli durumundan kapalı duruma geçmesine neden olur.

ICommunicationObject.Close(TimeSpan)

ClientBase<TChannel> nesnesinin geçerli durumundan kapalı duruma geçmesine neden olur.

ICommunicationObject.Closed

ClientBase<TChannel> nesnesi geçerli durumundan kapalı duruma geçtiğinde çağrılan olay işleyicisi.

ICommunicationObject.Closing

ClientBase<TChannel> nesnesi geçerli durumundan kapalı duruma geçtiğinde çağrılan olay işleyicisi.

ICommunicationObject.EndClose(IAsyncResult)

ClientBase<TChannel> nesnesini kapatmak için zaman uyumsuz bir işlemi tamamlar.

ICommunicationObject.EndOpen(IAsyncResult)

ClientBase<TChannel> nesnesini açmak için zaman uyumsuz bir işlemi tamamlar.

ICommunicationObject.Faulted

ClientBase<TChannel> nesnesi üzerinde bir işlem gerçekleştirirken bir hata oluştuğunda çağrılan olay işleyicisi.

ICommunicationObject.Open()

Bir iletişim nesnesinin oluşturulan durumdan açık duruma geçmesine neden olur.

ICommunicationObject.Open(TimeSpan)

ClientBase<TChannel> nesnesinin belirtilen zaman aralığı içinde oluşturulan durumdan açık duruma geçmesine neden olur.

ICommunicationObject.Opened

ClientBase<TChannel> nesnesi oluşturulan durumdan açık duruma geçtiğinde çağrılan olay işleyicisi.

ICommunicationObject.Opening

ClientBase<TChannel> nesnesi oluşturulan durumdan açık duruma geçtiğinde çağrılan olay işleyicisi.

IDisposable.Dispose()

Dispose() yönteminin açık uygulaması.

Uzantı Metotları

ConfigureAwait(IAsyncDisposable, Boolean)

Zaman uyumsuz bir atılabilir öğeden döndürülen görevlerde awaits işleminin nasıl gerçekleştirileceğini yapılandırılır.

Şunlara uygulanır