Bagikan melalui


ChannelBase Kelas

Definisi

Menyediakan implementasi dasar untuk saluran kustom.

public ref class ChannelBase abstract : System::ServiceModel::Channels::CommunicationObject, System::ServiceModel::Channels::IChannel, System::ServiceModel::IDefaultCommunicationTimeouts
public abstract class ChannelBase : System.ServiceModel.Channels.CommunicationObject, System.ServiceModel.Channels.IChannel, System.ServiceModel.IDefaultCommunicationTimeouts
type ChannelBase = class
    inherit CommunicationObject
    interface IChannel
    interface ICommunicationObject
    interface IDefaultCommunicationTimeouts
Public MustInherit Class ChannelBase
Inherits CommunicationObject
Implements IChannel, IDefaultCommunicationTimeouts
Warisan
Turunan
Penerapan

Keterangan

Penting

Metode panggilan dari kelas ini dengan data yang tidak tepercaya adalah risiko keamanan. Panggil metode dari kelas ini hanya dengan data tepercaya. Untuk informasi selengkapnya, lihat Memvalidasi Semua Input.

Kelas ini ChannelBase menyediakan implementasi kelas dasar abstrak dari IChannel antarmuka. Ini juga mengharuskan setiap saluran dikaitkan dengan manajer saluran. Perhatikan bahwa satu-satunya konstruktor yang tersedia untuk membuat instans ChannelBase memerlukan channelManager parameter input.

Perubahan status dikelola dengan mewarisi dari CommunicationObject implementasi mesin status.

ChannelBase mendapatkan batas waktu komunikasi defaultnya untuk operasi buka, tutup, kirim, dan terima dari yang ChannelManagerBase terkait dengannya.

juga ChannelBase mengelola manajer untuk Anda. Selain mengekspos referensi ke manajer, kelas dasar juga memberi tahu manajer ketika saluran dibuat dan dihancurkan. Tetapi referensi ke manajer hanya baik sampai saluran dihancurkan.

Bahkan jika Anda menggunakan kelas dasar, Anda masih harus memberikan perilaku untuk membuka dan menutup saluran. Implementasi default metode ini tidak memberikan informasi yang berguna.

Anda juga harus memastikan untuk mengambil GetProperty alih setiap kali Anda menerapkan saluran. GetProperty adalah cara yang sangat baik untuk mengomunikasikan informasi di sepanjang tumpukan saluran tanpa harus tahu saluran apa yang ada di bawah Anda, atau saluran apa di atas yang mungkin Anda lakukan kueri. Tentukan antarmuka yang dapat dikueri untuk informasi yang tersedia. Setiap kali Anda tidak mengenali argumen jenis untuk GetProperty, delegasikan ke bawah ke saluran berikutnya di tumpukan atau kembali null jika Anda membuat saluran transportasi baru di bagian bawah tumpukan.

Konstruktor

ChannelBase(ChannelManagerBase)

Menginisialisasi instans baru kelas ChannelBase.

Properti

DefaultCloseTimeout

Mendapatkan interval waktu default yang disediakan agar operasi penutupan selesai.

DefaultOpenTimeout

Mendapatkan interval waktu default yang disediakan agar operasi terbuka selesai.

DefaultReceiveTimeout

Mendapatkan interval waktu default yang disediakan agar operasi penerima selesai.

DefaultSendTimeout

Mendapatkan interval waktu default yang disediakan agar operasi pengiriman selesai.

IsDisposed

Mendapatkan nilai yang menunjukkan apakah objek komunikasi telah dibuang.

(Diperoleh dari CommunicationObject)
Manager

Mendapatkan manajer saluran yang terkait dengan saluran saat ini.

State

Mendapatkan nilai yang menunjukkan status objek komunikasi saat ini.

(Diperoleh dari CommunicationObject)
ThisLock

Mendapatkan kunci yang saling eksklusif yang melindungi instans kelas selama transisi status.

(Diperoleh dari CommunicationObject)

Metode

Abort()

Menyebabkan objek komunikasi segera beralih dari statusnya saat ini ke status penutupan.

(Diperoleh dari CommunicationObject)
BeginClose(AsyncCallback, Object)

Memulai operasi asinkron untuk menutup objek komunikasi.

(Diperoleh dari CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Memulai operasi asinkron untuk menutup objek komunikasi dengan batas waktu yang ditentukan.

(Diperoleh dari CommunicationObject)
BeginOpen(AsyncCallback, Object)

Memulai operasi asinkron untuk membuka objek komunikasi.

(Diperoleh dari CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Memulai operasi asinkron untuk membuka objek komunikasi dalam interval waktu tertentu.

(Diperoleh dari CommunicationObject)
Close()

Menyebabkan objek komunikasi beralih dari statusnya saat ini ke status tertutup.

(Diperoleh dari CommunicationObject)
Close(TimeSpan)

Menyebabkan objek komunikasi beralih dari statusnya saat ini ke status tertutup dalam interval waktu tertentu.

(Diperoleh dari CommunicationObject)
EndClose(IAsyncResult)

Menyelesaikan operasi asinkron untuk menutup objek komunikasi.

(Diperoleh dari CommunicationObject)
EndOpen(IAsyncResult)

Menyelesaikan operasi asinkron untuk membuka objek komunikasi.

(Diperoleh dari CommunicationObject)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Fault()

Menyebabkan objek komunikasi beralih dari statusnya saat ini ke status rusak.

(Diperoleh dari CommunicationObject)
GetCommunicationObjectType()

Mendapatkan jenis objek komunikasi.

(Diperoleh dari CommunicationObject)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetProperty<T>()

Mengembalikan objek jenis yang diminta, jika ada, dari lapisan yang sesuai di tumpukan saluran.

GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
OnAbort()

Menyisipkan pemrosesan pada objek komunikasi setelah transisi ke status penutupan karena pemanggilan operasi pembatalan sinkron.

(Diperoleh dari CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Menyisipkan pemrosesan setelah objek komunikasi beralih ke status penutupan karena pemanggilan operasi penutupan asinkron.

(Diperoleh dari CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Menyisipkan pemrosesan pada objek komunikasi setelah transisi ke status pembukaan karena pemanggilan operasi terbuka asinkron.

(Diperoleh dari CommunicationObject)
OnClose(TimeSpan)

Menyisipkan pemrosesan pada objek komunikasi setelah transisi ke status penutupan karena pemanggilan operasi penutupan sinkron.

(Diperoleh dari CommunicationObject)
OnCloseAsync(TimeSpan)

Menyediakan implementasi dasar untuk saluran kustom.

(Diperoleh dari CommunicationObject)
OnClosed()

Menggunakan pelacakan diagnostik selama transisi ke status penutupan.

OnClosing()

Dipanggil selama transisi objek komunikasi ke status penutupan.

(Diperoleh dari CommunicationObject)
OnEndClose(IAsyncResult)

Menyelesaikan operasi asinkron pada penutupan objek komunikasi.

(Diperoleh dari CommunicationObject)
OnEndOpen(IAsyncResult)

Menyelesaikan operasi asinkron pada pembukaan objek komunikasi.

(Diperoleh dari CommunicationObject)
OnFaulted()

Menyisipkan pemrosesan pada objek komunikasi setelah transisi ke status rusak karena pemanggilan operasi kesalahan sinkron.

(Diperoleh dari CommunicationObject)
OnOpen(TimeSpan)

Menyisipkan pemrosesan pada objek komunikasi setelah transisi ke status pembukaan yang harus diselesaikan dalam interval waktu yang ditentukan.

(Diperoleh dari CommunicationObject)
OnOpenAsync(TimeSpan)

Menyediakan implementasi dasar untuk saluran kustom.

(Diperoleh dari CommunicationObject)
OnOpened()

Dipanggil selama transisi objek komunikasi ke status terbuka.

(Diperoleh dari CommunicationObject)
OnOpening()

Dipanggil selama transisi objek komunikasi ke status pembukaan.

(Diperoleh dari CommunicationObject)
Open()

Menyebabkan objek komunikasi beralih dari status yang dibuat ke status dibuka.

(Diperoleh dari CommunicationObject)
Open(TimeSpan)

Menyebabkan objek komunikasi beralih dari status yang dibuat ke status dibuka dalam interval waktu tertentu.

(Diperoleh dari CommunicationObject)
ThrowIfDisposed()

Melempar pengecualian jika objek komunikasi dibuang.

(Diperoleh dari CommunicationObject)
ThrowIfDisposedOrImmutable()

Memberikan pengecualian jika objek State komunikasi properti tidak diatur ke status Created .

(Diperoleh dari CommunicationObject)
ThrowIfDisposedOrNotOpen()

Melempar pengecualian jika objek komunikasi tidak dalam status Opened .

(Diperoleh dari CommunicationObject)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Acara

Closed

Terjadi ketika objek komunikasi beralih ke status tertutup.

(Diperoleh dari CommunicationObject)
Closing

Terjadi ketika objek komunikasi beralih ke status penutupan.

(Diperoleh dari CommunicationObject)
Faulted

Terjadi ketika objek komunikasi beralih ke status rusak.

(Diperoleh dari CommunicationObject)
Opened

Terjadi ketika objek komunikasi beralih ke status terbuka.

(Diperoleh dari CommunicationObject)
Opening

Terjadi ketika objek komunikasi beralih ke status pembukaan.

(Diperoleh dari CommunicationObject)

Implementasi Antarmuka Eksplisit

IAsyncCommunicationObject.CloseAsync(TimeSpan)

Menyediakan implementasi dasar untuk saluran kustom.

(Diperoleh dari CommunicationObject)
IAsyncCommunicationObject.OpenAsync(TimeSpan)

Menyediakan implementasi dasar untuk saluran kustom.

(Diperoleh dari CommunicationObject)
IDefaultCommunicationTimeouts.CloseTimeout

Mendapatkan interval waktu setelah metode tutup, dipanggil oleh objek komunikasi, waktu habis.

IDefaultCommunicationTimeouts.OpenTimeout

Mendapatkan interval waktu setelah metode terbuka, dipanggil oleh objek komunikasi, waktu habis.

IDefaultCommunicationTimeouts.ReceiveTimeout

Mendapatkan interval waktu setelah metode terima, dipanggil oleh objek komunikasi, waktu habis.

IDefaultCommunicationTimeouts.SendTimeout

Mendapatkan interval waktu setelah metode kirim, dipanggil oleh objek komunikasi, waktu habis.

Metode Ekstensi

CloseHelperAsync(ICommunicationObject, TimeSpan)

Menyediakan implementasi dasar untuk saluran kustom.

OpenHelperAsync(ICommunicationObject, TimeSpan)

Menyediakan implementasi dasar untuk saluran kustom.

GetInternalCloseTimeout(CommunicationObject)

Menyediakan implementasi dasar untuk saluran kustom.

Berlaku untuk