ClientBase<TChannel> Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan implementasi dasar yang digunakan untuk membuat objek klien Windows Communication Foundation (WCF) yang dapat memanggil layanan.
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
Jenis parameter
- TChannel
Saluran yang akan digunakan untuk menyambungkan ke layanan.
- Warisan
-
ClientBase<TChannel>
- Turunan
- Penerapan
Contoh
Contoh kode berikut menunjukkan bagaimana Alat Utilitas Metadata ServiceModel (Svcutil.exe) memperluas ClientBase<TChannel> kelas untuk membuat kelas klien 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
Keterangan
ClientBase<TChannel> Perluas kelas untuk membuat objek klien WCF kustom yang dapat digunakan untuk menyambungkan ke layanan. Biasanya, kelas dasar klien WCF diperluas oleh alat seperti ServiceModel Metadata Utility Tool (Svcutil.exe) atas nama Anda. Misalnya, lihat bagian Contoh.
Kelas ClientBase<TChannel> dapat digunakan dengan cepat dan mudah oleh pengembang yang lebih suka objek daripada penggunaan antarmuka dan System.ServiceModel.ChannelFactory<TChannel> kelas. Dalam semua kasus, kelas ini membungkus atau mengekspos metode dan fungsionalitas System.ServiceModel.ChannelFactory<TChannel> kelas dan System.ServiceModel.IClientChannel antarmuka.
Seperti saat menggunakan System.ServiceModel.ServiceHost kelas , Anda dapat membuat kelas dan memodifikasi titik akhir, pabrik saluran, atau informasi keamanan sebelum melakukan panggilan atau panggilan Openapa pun . Untuk informasi selengkapnya, lihat Gambaran Umum Klien WCF dan Mengakses Layanan Menggunakan Klien WCF.
Catatan khusus untuk pengguna C++ Terkelola yang berasal dari kelas ini:
- Masukkan kode pembersihan Anda di (On)(Begin)Close (dan/atau OnAbort), bukan di destruktor.
- Hindari destruktor: pengompilasi menyebabkan pengompilasi dibuat IDisposablesecara otomatis .
- Hindari anggota non-referensi: mereka dapat menyebabkan pengompilasi menghasilkan IDisposablesecara otomatis .
- Hindari finalizer; tetapi jika Anda menyertakannya, Anda harus menekan peringatan build dan panggilan SuppressFinalize(Object) dan finalizer itu sendiri dari (On)(Begin)Close (dan/atau OnAbort) untuk meniru apa yang akan menjadi perilaku yang dihasilkan IDisposable secara otomatis.
Konstruktor
| Nama | Deskripsi |
|---|---|
| ClientBase<TChannel>() |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan titik akhir target default dari file konfigurasi aplikasi. |
| ClientBase<TChannel>(Binding, EndpointAddress) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan pengikatan dan alamat target yang ditentukan. |
| ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress) |
Menginisialisasi instans baru dari kelas ClientBase<TChannel>. |
| ClientBase<TChannel>(InstanceContext, ServiceEndpoint) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan objek dan InstanceContext yang ditentukanServiceEndpoint. |
| ClientBase<TChannel>(InstanceContext, String, EndpointAddress) |
Menginisialisasi instans baru dari kelas ClientBase<TChannel>. |
| ClientBase<TChannel>(InstanceContext, String, String) |
Menginisialisasi instans baru dari kelas ClientBase<TChannel>. |
| ClientBase<TChannel>(InstanceContext, String) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan layanan panggilan balik dan informasi konfigurasi titik akhir yang ditentukan. |
| ClientBase<TChannel>(InstanceContext) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan |
| ClientBase<TChannel>(ServiceEndpoint) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan ServiceEndpoint. |
| ClientBase<TChannel>(String, EndpointAddress) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan alamat target dan informasi titik akhir yang ditentukan. |
| ClientBase<TChannel>(String, String) |
Menginisialisasi instans baru dari kelas ClientBase<TChannel>. |
| ClientBase<TChannel>(String) |
Menginisialisasi instans ClientBase<TChannel> baru kelas menggunakan informasi konfigurasi yang ditentukan dalam file konfigurasi aplikasi oleh |
Properti
| Nama | Deskripsi |
|---|---|
| CacheSetting |
Mendapatkan atau mengatur pengaturan cache. |
| Channel |
Mendapatkan saluran dalam yang digunakan untuk mengirim pesan ke berbagai titik akhir layanan yang dikonfigurasi. |
| ChannelFactory |
Mendapatkan objek yang mendasar ChannelFactory<TChannel> . |
| ClientCredentials |
Mendapatkan kredensial klien yang digunakan untuk memanggil operasi. |
| Endpoint |
Mendapatkan titik akhir target untuk layanan yang dapat disambungkan oleh klien WCF. |
| InnerChannel |
Mendapatkan implementasi yang mendasar IClientChannel . |
| State |
Mendapatkan status ClientBase<TChannel> objek saat ini. |
Metode
| Nama | Deskripsi |
|---|---|
| Abort() |
ClientBase<TChannel> Menyebabkan objek segera beralih dari statusnya saat ini ke status tertutup. |
| Close() |
ClientBase<TChannel> Menyebabkan objek beralih dari statusnya saat ini ke status tertutup. |
| CloseAsync() |
Menyediakan implementasi dasar yang digunakan untuk membuat objek klien Windows Communication Foundation (WCF) yang dapat memanggil layanan. |
| CreateChannel() |
Mengembalikan saluran baru ke layanan. |
| DisplayInitializationUI() |
Menginstruksikan saluran dalam untuk menampilkan antarmuka pengguna jika diperlukan untuk menginisialisasi saluran sebelum menggunakannya. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetDefaultValueForInitialization<T>() |
Mereplikasi perilaku kata kunci default di C#. |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| InvokeAsync(ClientBase<TChannel>.BeginOperationDelegate, Object[], ClientBase<TChannel>.EndOperationDelegate, SendOrPostCallback, Object) |
Menyediakan dukungan untuk menerapkan pola asinkron berbasis peristiwa. Untuk informasi selengkapnya tentang pola ini, lihat Gambaran Umum Pola Asinkron berbasis peristiwa. |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| Open() |
ClientBase<TChannel> Menyebabkan objek beralih dari status yang dibuat ke status terbuka. |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IAsyncDisposable.DisposeAsync() |
Menyediakan implementasi dasar yang digunakan untuk membuat objek klien Windows Communication Foundation (WCF) yang dapat memanggil layanan. |
| ICommunicationObject.BeginClose(AsyncCallback, Object) |
Memulai operasi asinkron untuk menutup ClientBase<TChannel>. |
| ICommunicationObject.BeginClose(TimeSpan, AsyncCallback, Object) |
Memulai operasi asinkron untuk menutup ClientBase<TChannel> dengan batas waktu yang ditentukan. |
| ICommunicationObject.BeginOpen(AsyncCallback, Object) |
Memulai operasi asinkron untuk membuka ClientBase<TChannel> objek. |
| ICommunicationObject.BeginOpen(TimeSpan, AsyncCallback, Object) |
Memulai operasi asinkron untuk membuka ClientBase<TChannel> objek dalam interval waktu tertentu. |
| ICommunicationObject.Close() |
Menyebabkan objek komunikasi beralih dari statusnya saat ini ke status tertutup. |
| ICommunicationObject.Close(TimeSpan) |
ClientBase<TChannel> Menyebabkan objek beralih dari statusnya saat ini ke status tertutup. |
| ICommunicationObject.Closed |
Penanganan aktivitas yang dipanggil ketika ClientBase<TChannel> objek telah beralih dari statusnya saat ini ke status tertutup. |
| ICommunicationObject.Closing |
Penanganan aktivitas yang dipanggil ketika ClientBase<TChannel> objek beralih dari statusnya saat ini ke status tertutup. |
| ICommunicationObject.EndClose(IAsyncResult) |
Menyelesaikan operasi asinkron untuk menutup ClientBase<TChannel> objek. |
| ICommunicationObject.EndOpen(IAsyncResult) |
Menyelesaikan operasi asinkron untuk membuka ClientBase<TChannel> objek. |
| ICommunicationObject.Faulted |
Penanganan aktivitas yang dipanggil ketika kesalahan terjadi saat melakukan operasi pada ClientBase<TChannel> objek. |
| ICommunicationObject.Open() |
Menyebabkan objek komunikasi beralih dari status yang dibuat ke status terbuka. |
| ICommunicationObject.Open(TimeSpan) |
ClientBase<TChannel> Menyebabkan objek beralih dari status yang dibuat ke status yang dibuka dalam interval waktu yang ditentukan. |
| ICommunicationObject.Opened |
Penanganan aktivitas yang dipanggil saat ClientBase<TChannel> objek beralih dari status yang dibuat ke status dibuka. |
| ICommunicationObject.Opening |
Penanganan aktivitas yang dipanggil saat ClientBase<TChannel> objek beralih dari status yang dibuat ke status dibuka. |
| IDisposable.Dispose() |
Implementasi eksplisit metode Dispose() . |