ServiceHost 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 host untuk layanan.
public ref class ServiceHost : System::ServiceModel::ServiceHostBase
public class ServiceHost : System.ServiceModel.ServiceHostBase
type ServiceHost = class
inherit ServiceHostBase
Public Class ServiceHost
Inherits ServiceHostBase
- Warisan
- Turunan
Contoh
// Host the service within this EXE console application.
public static void Main()
{
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService)))
{
try
{
// Open the ServiceHost to start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.ReadLine();
// Close the ServiceHost.
serviceHost.Close();
}
catch (TimeoutException timeProblem)
{
Console.WriteLine(timeProblem.Message);
Console.ReadLine();
}
catch (CommunicationException commProblem)
{
Console.WriteLine(commProblem.Message);
Console.ReadLine();
}
}
}
' Host the service within this EXE console application.
Public Shared Sub Main()
' Create a ServiceHost for the CalculatorService type and use the base address from config.
Using svcHost As New ServiceHost(GetType(CalculatorService))
Try
' Open the ServiceHost to start listening for messages.
svcHost.Open()
' The service can now be accessed.
Console.WriteLine("The service is ready.")
Console.WriteLine("Press <ENTER> to terminate service.")
Console.WriteLine()
Console.ReadLine()
'Close the ServiceHost.
svcHost.Close()
Catch timeout As TimeoutException
Console.WriteLine(timeout.Message)
Console.ReadLine()
Catch commException As CommunicationException
Console.WriteLine(commException.Message)
Console.ReadLine()
End Try
End Using
End Sub
Keterangan
Mengimplementasikan host yang digunakan oleh model pemrograman model layanan Windows Communication Foundation (WCF).
Gunakan kelas ServiceHost untuk mengonfigurasi dan mengekspos layanan untuk digunakan oleh aplikasi klien saat Anda tidak menggunakan Layanan Informasi Internet (IIS) atau Windows Activation Services (WAS) untuk mengekspos layanan. Baik IIS maupun WAS berinteraksi dengan ServiceHost objek atas nama Anda.
Untuk mengekspos layanan untuk digunakan oleh penelepon, WCF memerlukan deskripsi layanan lengkap (diwakili oleh ServiceDescription kelas ). Kelas ServiceHost membuat ServiceDescription dari jenis layanan dan informasi konfigurasi lalu menggunakan deskripsi tersebut untuk membuat ChannelDispatcher objek untuk setiap titik akhir dalam deskripsi.
ServiceHost Gunakan objek untuk memuat layanan, mengonfigurasi titik akhir, menerapkan pengaturan keamanan, dan memulai pendengar untuk menangani permintaan masuk.
Konstruktor
| Nama | Deskripsi |
|---|---|
| ServiceHost() |
Menginisialisasi instans baru dari kelas ServiceHost. |
| ServiceHost(Object, Uri[]) |
Menginisialisasi instans ServiceHost baru kelas dengan instans layanan dan alamat dasarnya yang ditentukan. |
| ServiceHost(Type, Uri[]) |
Menginisialisasi instans ServiceHost baru kelas dengan jenis layanan dan alamat dasarnya yang ditentukan. |
Properti
| Nama | Deskripsi |
|---|---|
| Authentication |
Mendapatkan perilaku autentikasi layanan. (Diperoleh dari ServiceHostBase) |
| Authorization |
Mendapatkan perilaku otorisasi untuk layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| BaseAddresses |
Mendapatkan alamat dasar yang digunakan oleh layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| ChannelDispatchers |
Mendapatkan koleksi dispatcher saluran yang digunakan oleh host layanan. (Diperoleh dari ServiceHostBase) |
| CloseTimeout |
Mendapatkan atau mengatur interval waktu yang diizinkan agar host layanan ditutup. (Diperoleh dari ServiceHostBase) |
| Credentials |
Mendapatkan kredensial untuk layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| DefaultCloseTimeout |
Mendapatkan interval waktu default yang diizinkan agar host layanan ditutup. (Diperoleh dari ServiceHostBase) |
| DefaultOpenTimeout |
Mendapatkan interval waktu default yang diizinkan untuk dibuka oleh host layanan. (Diperoleh dari ServiceHostBase) |
| Description |
Mendapatkan deskripsi layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| Extensions |
Mendapatkan ekstensi untuk host layanan yang ditentukan saat ini. (Diperoleh dari ServiceHostBase) |
| ImplementedContracts |
Mengambil kontrak yang diterapkan oleh layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| IsDisposed |
Mendapatkan nilai yang menunjukkan apakah objek komunikasi telah dibuang. (Diperoleh dari CommunicationObject) |
| ManualFlowControlLimit |
Mendapatkan atau mengatur batas kontrol alur untuk pesan yang diterima oleh layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| OpenTimeout |
Mendapatkan atau mengatur interval waktu yang diizinkan untuk dibuka oleh host layanan. (Diperoleh dari ServiceHostBase) |
| SingletonInstance |
Mendapatkan instans singleton dari layanan yang dihosting. |
| 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
| Nama | Deskripsi |
|---|---|
| Abort() |
Menyebabkan objek komunikasi segera beralih dari statusnya saat ini ke status penutupan. (Diperoleh dari CommunicationObject) |
| AddBaseAddress(Uri) |
Menambahkan alamat dasar ke host layanan. (Diperoleh dari ServiceHostBase) |
| AddDefaultEndpoints() |
Menambahkan titik akhir layanan untuk semua alamat dasar di setiap kontrak yang ditemukan di host layanan dengan pengikatan default. (Diperoleh dari ServiceHostBase) |
| AddServiceEndpoint(ServiceEndpoint) |
Menambahkan titik akhir layanan yang ditentukan ke layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| AddServiceEndpoint(String, Binding, String, Uri) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, alamat titik akhir, dan URI tertentu yang berisi alamat yang didengarkannya. (Diperoleh dari ServiceHostBase) |
| AddServiceEndpoint(String, Binding, String) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, dan alamat titik akhir tertentu. (Diperoleh dari ServiceHostBase) |
| AddServiceEndpoint(String, Binding, Uri, Uri) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, dan URI yang ditentukan yang berisi titik akhir dan alamat mendengarkan. (Diperoleh dari ServiceHostBase) |
| AddServiceEndpoint(String, Binding, Uri) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, dan URI tertentu yang berisi alamat titik akhir. (Diperoleh dari ServiceHostBase) |
| AddServiceEndpoint(Type, Binding, String, Uri) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, alamat titik akhir, dan URI tertentu tempat layanan mendengarkan. |
| AddServiceEndpoint(Type, Binding, String) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, dan alamat titik akhir tertentu. |
| AddServiceEndpoint(Type, Binding, Uri, Uri) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, URI tertentu yang berisi alamat titik akhir, dan URI tempat layanan mendengarkan. |
| AddServiceEndpoint(Type, Binding, Uri) |
Menambahkan titik akhir layanan ke layanan yang dihosting dengan kontrak, pengikatan, dan URI tertentu yang berisi alamat titik akhir. |
| ApplyConfiguration() |
Memuat deskripsi layanan dari file konfigurasi dan menerapkannya ke runtime yang sedang dibangun. |
| ApplyConfiguration() |
Memuat informasi deskripsi layanan dari file konfigurasi dan menerapkannya ke runtime yang sedang dibangun. (Diperoleh dari ServiceHostBase) |
| 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 tertentu. (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 yang ditentukan. (Diperoleh dari CommunicationObject) |
| CreateDescription(IDictionary<String,ContractDescription>) |
Membuat deskripsi layanan yang dihosting. |
| 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) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| IncrementManualFlowControlLimit(Int32) |
Meningkatkan batas laju alur pesan ke layanan yang dihosting dengan kenaikan tertentu. (Diperoleh dari ServiceHostBase) |
| InitializeDescription(Object, UriSchemeKeyedCollection) |
Menginisialisasi deskripsi layanan yang dihosting berdasarkan instansnya dan alamat dasar yang ditentukan. |
| InitializeDescription(Type, UriSchemeKeyedCollection) |
Menginisialisasi deskripsi layanan yang dihosting berdasarkan jenisnya dan alamat dasar yang ditentukan. |
| InitializeDescription(UriSchemeKeyedCollection) |
Membuat dan menginisialisasi host layanan dengan deskripsi kontrak dan layanan. (Diperoleh dari ServiceHostBase) |
| InitializeRuntime() |
Menginisialisasi runtime untuk host layanan. (Diperoleh dari ServiceHostBase) |
| LoadConfigurationSection(ServiceElement) |
Memuat elemen layanan dari file konfigurasi layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| OnAbort() |
Membatalkan layanan. (Diperoleh dari ServiceHostBase) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
Memulai operasi asinkron yang dipanggil pada penutupan host layanan. (Diperoleh dari ServiceHostBase) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Memulai operasi asinkron yang dipanggil pada pembukaan host layanan. (Diperoleh dari ServiceHostBase) |
| OnClose(TimeSpan) |
Menutup layanan yang dihosting, termasuk dispatcher saluran mereka dan konteks dan pendengar instans terkait. (Diperoleh dari ServiceHostBase) |
| OnClosed() |
Membuang layanan sekali pakai yang dihosting ketika host layanan ditutup. |
| OnClosing() |
Dipanggil selama transisi objek komunikasi ke status penutupan. (Diperoleh dari CommunicationObject) |
| OnEndClose(IAsyncResult) |
Menyelesaikan operasi asinkron yang dipanggil pada penutupan host layanan. (Diperoleh dari ServiceHostBase) |
| OnEndOpen(IAsyncResult) |
Menyelesaikan operasi asinkron yang dipanggil pada pembukaan host layanan. (Diperoleh dari ServiceHostBase) |
| OnFaulted() |
Menyisipkan pemrosesan pada objek komunikasi setelah transisi ke status rusak karena pemanggilan operasi kesalahan sinkron. (Diperoleh dari CommunicationObject) |
| OnOpen(TimeSpan) |
Membuka dispatcher saluran. (Diperoleh dari ServiceHostBase) |
| OnOpened() |
Mendapatkan kredensial layanan, autentikasi layanan, dan perilaku otorisasi untuk layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| OnOpening() |
Dipanggil selama transisi objek komunikasi ke status pembukaan. (Diperoleh dari CommunicationObject) |
| Open() |
Menyebabkan objek komunikasi beralih dari status yang dibuat ke status terbuka. (Diperoleh dari CommunicationObject) |
| Open(TimeSpan) |
Menyebabkan objek komunikasi beralih dari status yang dibuat ke status yang dibuka dalam interval waktu yang ditentukan. (Diperoleh dari CommunicationObject) |
| ReleasePerformanceCounters() |
Merilis penghitung kinerja dispatcher layanan dan saluran untuk layanan yang dihosting. (Diperoleh dari ServiceHostBase) |
| SetEndpointAddress(ServiceEndpoint, String) |
Mengatur alamat titik akhir titik akhir yang ditentukan ke alamat yang ditentukan. (Diperoleh dari ServiceHostBase) |
| ThrowIfDisposed() |
Melempar pengecualian jika objek komunikasi dibuang. (Diperoleh dari CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
Melempar 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
| Nama | Deskripsi |
|---|---|
| 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) |
| UnknownMessageReceived |
Terjadi ketika pesan yang tidak diketahui diterima. (Diperoleh dari ServiceHostBase) |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IDisposable.Dispose() |
Menutup host layanan. (Diperoleh dari ServiceHostBase) |