ServiceHost Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje hostitele pro služby.
public ref class ServiceHost : System::ServiceModel::ServiceHostBase
public class ServiceHost : System.ServiceModel.ServiceHostBase
type ServiceHost = class
inherit ServiceHostBase
Public Class ServiceHost
Inherits ServiceHostBase
- Dědičnost
- Odvozené
Příklady
// 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
Poznámky
Implementuje hostitele používaného programovacím modelem modelu služby WINDOWS COMMUNICATION FOUNDATION (WCF).
Pomocí třídy ServiceHost nakonfigurujte a zpřístupňte službu pro použití klientskými aplikacemi, pokud nepoužíváte Internetové Informační Služby (IIS) nebo Windows Aktivační služby (WAS) ke zveřejnění služby. Služba IIS i WAS interagují s objektem ServiceHost vaším jménem.
K zveřejnění služby pro použití volajícími vyžaduje WCF úplný popis služby (reprezentovaný ServiceDescription třídou). Třída ServiceHost vytvoří ServiceDescription z typu služby a informací o konfiguraci a pak tento popis použije k vytvoření ChannelDispatcher objektů pro každý koncový bod v popisu.
Pomocí objektu ServiceHost načtěte službu, nakonfigurujte koncové body, použijte nastavení zabezpečení a spusťte naslouchací procesy pro zpracování příchozích požadavků.
Konstruktory
| Name | Description |
|---|---|
| ServiceHost() |
Inicializuje novou instanci ServiceHost třídy. |
| ServiceHost(Object, Uri[]) |
Inicializuje novou instanci třídy s instancí ServiceHost služby a její základní adresy zadané. |
| ServiceHost(Type, Uri[]) |
Inicializuje novou instanci ServiceHost třídy s typem služby a jeho základní adresy zadané. |
Vlastnosti
| Name | Description |
|---|---|
| Authentication |
Získá chování ověřování služby. (Zděděno od ServiceHostBase) |
| Authorization |
Získá chování autorizace pro službu hostované. (Zděděno od ServiceHostBase) |
| BaseAddresses |
Získá základní adresy používané hostované službou. (Zděděno od ServiceHostBase) |
| ChannelDispatchers |
Získá kolekci dispečerů kanálů používaných hostitelem služby. (Zděděno od ServiceHostBase) |
| CloseTimeout |
Získá nebo nastaví časový interval povolený pro ukončení hostitele služby. (Zděděno od ServiceHostBase) |
| Credentials |
Získá přihlašovací údaje pro hostované služby. (Zděděno od ServiceHostBase) |
| DefaultCloseTimeout |
Získá výchozí interval povolený pro ukončení hostitele služby. (Zděděno od ServiceHostBase) |
| DefaultOpenTimeout |
Získá výchozí časový interval povolený pro otevření hostitele služby. (Zděděno od ServiceHostBase) |
| Description |
Získá popis hostované služby. (Zděděno od ServiceHostBase) |
| Extensions |
Získá rozšíření pro aktuálního zadaného hostitele služby. (Zděděno od ServiceHostBase) |
| ImplementedContracts |
Načte kontrakty implementované službou hostovanou službou. (Zděděno od ServiceHostBase) |
| IsDisposed |
Získá hodnotu, která označuje, zda komunikační objekt byl uvolněn. (Zděděno od CommunicationObject) |
| ManualFlowControlLimit |
Získá nebo nastaví limit řízení toku pro zprávy přijaté službou hostované. (Zděděno od ServiceHostBase) |
| OpenTimeout |
Získá nebo nastaví časový interval povolený pro otevření hostitele služby. (Zděděno od ServiceHostBase) |
| SingletonInstance |
Získá instanci singleton hostované služby. |
| State |
Získá hodnotu, která označuje aktuální stav komunikačního objektu. (Zděděno od CommunicationObject) |
| ThisLock |
Získá vzájemně vylučující zámek, který chrání instanci třídy během přechodu stavu. (Zděděno od CommunicationObject) |
Metody
| Name | Description |
|---|---|
| Abort() |
Způsobí, že komunikační objekt přejde okamžitě z aktuálního stavu do koncového stavu. (Zděděno od CommunicationObject) |
| AddBaseAddress(Uri) |
Přidá základní adresu k hostiteli služby. (Zděděno od ServiceHostBase) |
| AddDefaultEndpoints() |
Přidá koncové body služby pro všechny základní adresy v jednotlivých kontraktech nalezených v hostiteli služby s výchozí vazbou. (Zděděno od ServiceHostBase) |
| AddServiceEndpoint(ServiceEndpoint) |
Přidá zadaný koncový bod služby do hostované služby. (Zděděno od ServiceHostBase) |
| AddServiceEndpoint(String, Binding, String, Uri) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou, adresou koncového bodu a identifikátorem URI, který obsahuje adresu, na které naslouchá. (Zděděno od ServiceHostBase) |
| AddServiceEndpoint(String, Binding, String) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou a adresou koncového bodu. (Zděděno od ServiceHostBase) |
| AddServiceEndpoint(String, Binding, Uri, Uri) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou a identifikátory URI, které obsahují koncový bod a adresy naslouchání. (Zděděno od ServiceHostBase) |
| AddServiceEndpoint(String, Binding, Uri) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou a identifikátorem URI, který obsahuje adresu koncového bodu. (Zděděno od ServiceHostBase) |
| AddServiceEndpoint(Type, Binding, String, Uri) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou, adresou koncového bodu a identifikátorem URI, na kterém služba naslouchá. |
| AddServiceEndpoint(Type, Binding, String) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou a adresou koncového bodu. |
| AddServiceEndpoint(Type, Binding, Uri, Uri) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou, identifikátorem URI obsahujícím adresu koncového bodu a identifikátorem URI, na kterém služba naslouchá. |
| AddServiceEndpoint(Type, Binding, Uri) |
Přidá koncový bod služby do hostované služby se zadaným kontraktem, vazbou a identifikátorem URI, který obsahuje adresu koncového bodu. |
| ApplyConfiguration() |
Načte popis služby z konfiguračního souboru a použije ho na vytvořený modul runtime. |
| ApplyConfiguration() |
Načte informace o popisu služby z konfiguračního souboru a použije je na vytvořený modul runtime. (Zděděno od ServiceHostBase) |
| BeginClose(AsyncCallback, Object) |
Zahájí asynchronní operaci ukončení komunikačního objektu. (Zděděno od CommunicationObject) |
| BeginClose(TimeSpan, AsyncCallback, Object) |
Zahájí asynchronní operaci ukončení komunikačního objektu se zadaným časovým limitem. (Zděděno od CommunicationObject) |
| BeginOpen(AsyncCallback, Object) |
Zahájí asynchronní operaci otevření komunikačního objektu. (Zděděno od CommunicationObject) |
| BeginOpen(TimeSpan, AsyncCallback, Object) |
Zahájí asynchronní operaci otevření komunikačního objektu v zadaném časovém intervalu. (Zděděno od CommunicationObject) |
| Close() |
Způsobí přechod komunikačního objektu z jeho aktuálního stavu do uzavřeného stavu. (Zděděno od CommunicationObject) |
| Close(TimeSpan) |
Způsobí, že komunikační objekt přejde z aktuálního stavu do uzavřeného stavu v zadaném časovém intervalu. (Zděděno od CommunicationObject) |
| CreateDescription(IDictionary<String,ContractDescription>) |
Vytvoří popis hostované služby. |
| EndClose(IAsyncResult) |
Dokončí asynchronní operaci pro zavření komunikačního objektu. (Zděděno od CommunicationObject) |
| EndOpen(IAsyncResult) |
Dokončí asynchronní operaci pro otevření komunikačního objektu. (Zděděno od CommunicationObject) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| Fault() |
Způsobí přechod komunikačního objektu z jeho aktuálního stavu do chybného stavu. (Zděděno od CommunicationObject) |
| GetCommunicationObjectType() |
Získá typ komunikačního objektu. (Zděděno od CommunicationObject) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| IncrementManualFlowControlLimit(Int32) |
Zvýší limit četnosti toků zpráv do hostované služby o zadaný přírůstek. (Zděděno od ServiceHostBase) |
| InitializeDescription(Object, UriSchemeKeyedCollection) |
Inicializuje popis služby hostované na základě jeho instance a zadané základní adresy. |
| InitializeDescription(Type, UriSchemeKeyedCollection) |
Inicializuje popis služby hostované na základě jeho typu a zadaných základních adres. |
| InitializeDescription(UriSchemeKeyedCollection) |
Vytvoří a inicializuje hostitele služby pomocí popisu kontraktu a služby. (Zděděno od ServiceHostBase) |
| InitializeRuntime() |
Inicializuje modul runtime pro hostitele služby. (Zděděno od ServiceHostBase) |
| LoadConfigurationSection(ServiceElement) |
Načte element služby z konfiguračního souboru hostované služby. (Zděděno od ServiceHostBase) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| OnAbort() |
Přeruší službu. (Zděděno od ServiceHostBase) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
Zahájí asynchronní operaci vyvolanou na konci hostitele služby. (Zděděno od ServiceHostBase) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Zahájí asynchronní operaci vyvolanou při otevření hostitele služby. (Zděděno od ServiceHostBase) |
| OnClose(TimeSpan) |
Zavře hostované služby, včetně jejich dispečerů kanálů a přidružených kontextů instancí a naslouchacích procesů. (Zděděno od ServiceHostBase) |
| OnClosed() |
Odstraní uvolnitelné služby hostované při zavření hostitele služby. |
| OnClosing() |
Vyvoláno během přechodu komunikačního objektu do koncového stavu. (Zděděno od CommunicationObject) |
| OnEndClose(IAsyncResult) |
Dokončí asynchronní operaci vyvolanou při zavření hostitele služby. (Zděděno od ServiceHostBase) |
| OnEndOpen(IAsyncResult) |
Dokončí asynchronní operaci vyvolanou při otevření hostitele služby. (Zděděno od ServiceHostBase) |
| OnFaulted() |
Vloží zpracování na komunikační objekt poté, co přejde do chybného stavu kvůli vyvolání synchronní operace selhání. (Zděděno od CommunicationObject) |
| OnOpen(TimeSpan) |
Otevře dispečery kanálu. (Zděděno od ServiceHostBase) |
| OnOpened() |
Získá přihlašovací údaje služby, ověřování služby a chování autorizace hostované služby. (Zděděno od ServiceHostBase) |
| OnOpening() |
Vyvoláno při přechodu komunikačního objektu do stavu otevření. (Zděděno od CommunicationObject) |
| Open() |
Způsobí, že komunikační objekt přejde z vytvořeného stavu do otevřeného stavu. (Zděděno od CommunicationObject) |
| Open(TimeSpan) |
Způsobí, že komunikační objekt přejde z vytvořeného stavu do otevřeného stavu v zadaném časovém intervalu. (Zděděno od CommunicationObject) |
| ReleasePerformanceCounters() |
Uvolní čítače výkonu dispečera a služby kanálu pro hostované služby. (Zděděno od ServiceHostBase) |
| SetEndpointAddress(ServiceEndpoint, String) |
Nastaví adresu koncového bodu zadaného koncového bodu na zadanou adresu. (Zděděno od ServiceHostBase) |
| ThrowIfDisposed() |
Vyvolá výjimku, pokud je komunikační objekt uvolněn. (Zděděno od CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
Vyvolá výjimku, pokud komunikační objekt State , který vlastnost není nastavena na Created stav. (Zděděno od CommunicationObject) |
| ThrowIfDisposedOrNotOpen() |
Vyvolá výjimku, pokud komunikační objekt není ve Opened stavu. (Zděděno od CommunicationObject) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Událost
| Name | Description |
|---|---|
| Closed |
Nastane, když komunikační objekt přejde do uzavřeného stavu. (Zděděno od CommunicationObject) |
| Closing |
Nastane, když komunikační objekt přejde do koncového stavu. (Zděděno od CommunicationObject) |
| Faulted |
Nastane, když komunikační objekt přejde do chybného stavu. (Zděděno od CommunicationObject) |
| Opened |
Nastane, když komunikační objekt přejde do otevřeného stavu. (Zděděno od CommunicationObject) |
| Opening |
Nastane, když komunikační objekt přejde do stavu otevření. (Zděděno od CommunicationObject) |
| UnknownMessageReceived |
Nastane při přijetí neznámé zprávy. (Zděděno od ServiceHostBase) |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Zavře hostitele služby. (Zděděno od ServiceHostBase) |