ServiceHost Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce un host per i servizi.
public ref class ServiceHost : System::ServiceModel::ServiceHostBase
public class ServiceHost : System.ServiceModel.ServiceHostBase
type ServiceHost = class
inherit ServiceHostBase
Public Class ServiceHost
Inherits ServiceHostBase
- Ereditarietà
- Derivato
Esempio
// 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
Commenti
Implementa l'host usato dal modello di programmazione del modello di servizio Windows Communication Foundation (WCF).
Utilizzare la classe ServiceHost per configurare ed esporre un servizio da usare dalle applicazioni client quando non si usa Internet Information Services (IIS) o Windows Activation Services (WAS) per esporre un servizio. Sia IIS che WAS interagiscono con un ServiceHost oggetto per conto dell'utente.
Per esporre un servizio per l'uso da parte dei chiamanti, WCF richiede una descrizione completa del servizio (rappresentata dalla ServiceDescription classe ). La ServiceHost classe crea un oggetto ServiceDescription dalle informazioni di configurazione e dal tipo di servizio e quindi usa tale descrizione per creare ChannelDispatcher oggetti per ogni endpoint nella descrizione.
Usare un ServiceHost oggetto per caricare un servizio, configurare gli endpoint, applicare le impostazioni di sicurezza e avviare i listener per gestire le richieste in ingresso.
Costruttori
| Nome | Descrizione |
|---|---|
| ServiceHost() |
Inizializza una nuova istanza della classe ServiceHost. |
| ServiceHost(Object, Uri[]) |
Inizializza una nuova istanza della ServiceHost classe con l'istanza del servizio e i relativi indirizzi di base specificati. |
| ServiceHost(Type, Uri[]) |
Inizializza una nuova istanza della ServiceHost classe con il tipo di servizio e i relativi indirizzi di base specificati. |
Proprietà
| Nome | Descrizione |
|---|---|
| Authentication |
Ottiene il comportamento di autenticazione del servizio. (Ereditato da ServiceHostBase) |
| Authorization |
Ottiene il comportamento di autorizzazione per il servizio ospitato. (Ereditato da ServiceHostBase) |
| BaseAddresses |
Ottiene gli indirizzi di base utilizzati dal servizio ospitato. (Ereditato da ServiceHostBase) |
| ChannelDispatchers |
Ottiene la raccolta di dispatcher del canale utilizzati dall'host del servizio. (Ereditato da ServiceHostBase) |
| CloseTimeout |
Ottiene o imposta l'intervallo di tempo consentito per la chiusura dell'host del servizio. (Ereditato da ServiceHostBase) |
| Credentials |
Ottiene le credenziali per il servizio ospitato. (Ereditato da ServiceHostBase) |
| DefaultCloseTimeout |
Ottiene l'intervallo di tempo predefinito consentito per la chiusura dell'host del servizio. (Ereditato da ServiceHostBase) |
| DefaultOpenTimeout |
Ottiene l'intervallo di tempo predefinito consentito per l'apertura dell'host del servizio. (Ereditato da ServiceHostBase) |
| Description |
Ottiene la descrizione del servizio ospitato. (Ereditato da ServiceHostBase) |
| Extensions |
Ottiene le estensioni per l'host del servizio specificato corrente. (Ereditato da ServiceHostBase) |
| ImplementedContracts |
Recupera i contratti implementati dal servizio ospitato. (Ereditato da ServiceHostBase) |
| IsDisposed |
Ottiene un valore che indica se l'oggetto di comunicazione è stato eliminato. (Ereditato da CommunicationObject) |
| ManualFlowControlLimit |
Ottiene o imposta il limite di controllo del flusso per i messaggi ricevuti dal servizio ospitato. (Ereditato da ServiceHostBase) |
| OpenTimeout |
Ottiene o imposta l'intervallo di tempo consentito per l'apertura dell'host del servizio. (Ereditato da ServiceHostBase) |
| SingletonInstance |
Ottiene l'istanza singleton del servizio ospitato. |
| State |
Ottiene un valore che indica lo stato corrente dell'oggetto di comunicazione. (Ereditato da CommunicationObject) |
| ThisLock |
Ottiene il blocco che protegge l'istanza della classe durante una transizione di stato. (Ereditato da CommunicationObject) |
Metodi
| Nome | Descrizione |
|---|---|
| Abort() |
Fa sì che un oggetto di comunicazione passi immediatamente dallo stato corrente allo stato di chiusura. (Ereditato da CommunicationObject) |
| AddBaseAddress(Uri) |
Aggiunge un indirizzo di base all'host del servizio. (Ereditato da ServiceHostBase) |
| AddDefaultEndpoints() |
Aggiunge endpoint di servizio per tutti gli indirizzi di base in ogni contratto trovato nell'host del servizio con l'associazione predefinita. (Ereditato da ServiceHostBase) |
| AddServiceEndpoint(ServiceEndpoint) |
Aggiunge l'endpoint di servizio specificato al servizio ospitato. (Ereditato da ServiceHostBase) |
| AddServiceEndpoint(String, Binding, String, Uri) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione, un indirizzo endpoint e un URI specificati che contiene l'indirizzo in cui è in ascolto. (Ereditato da ServiceHostBase) |
| AddServiceEndpoint(String, Binding, String) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione e un indirizzo endpoint specificati. (Ereditato da ServiceHostBase) |
| AddServiceEndpoint(String, Binding, Uri, Uri) |
Aggiunge un endpoint di servizio al servizio ospitato con il contratto, l'associazione e gli URI specificati che contengono l'endpoint e gli indirizzi di ascolto. (Ereditato da ServiceHostBase) |
| AddServiceEndpoint(String, Binding, Uri) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione e un URI specificati che contiene l'indirizzo dell'endpoint. (Ereditato da ServiceHostBase) |
| AddServiceEndpoint(Type, Binding, String, Uri) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione, un indirizzo endpoint e un URI in cui il servizio è in ascolto. |
| AddServiceEndpoint(Type, Binding, String) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione e un indirizzo endpoint specificati. |
| AddServiceEndpoint(Type, Binding, Uri, Uri) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione, un URI che contiene l'indirizzo dell'endpoint e un URI in cui il servizio è in ascolto. |
| AddServiceEndpoint(Type, Binding, Uri) |
Aggiunge un endpoint di servizio al servizio ospitato con un contratto, un'associazione e un URI specificati che contiene l'indirizzo dell'endpoint. |
| ApplyConfiguration() |
Carica la descrizione del servizio dal file di configurazione e la applica al runtime in fase di costruzione. |
| ApplyConfiguration() |
Carica le informazioni sulla descrizione del servizio dal file di configurazione e la applica al runtime in fase di costruzione. (Ereditato da ServiceHostBase) |
| BeginClose(AsyncCallback, Object) |
Avvia un'operazione asincrona per chiudere un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| BeginClose(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona per chiudere un oggetto di comunicazione con un timeout specificato. (Ereditato da CommunicationObject) |
| BeginOpen(AsyncCallback, Object) |
Avvia un'operazione asincrona per aprire un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| BeginOpen(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona per aprire un oggetto di comunicazione entro un intervallo di tempo specificato. (Ereditato da CommunicationObject) |
| Close() |
Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato chiuso. (Ereditato da CommunicationObject) |
| Close(TimeSpan) |
Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato chiuso entro un intervallo di tempo specificato. (Ereditato da CommunicationObject) |
| CreateDescription(IDictionary<String,ContractDescription>) |
Crea una descrizione del servizio ospitato. |
| EndClose(IAsyncResult) |
Completa un'operazione asincrona per chiudere un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| EndOpen(IAsyncResult) |
Completa un'operazione asincrona per aprire un oggetto di comunicazione. (Ereditato da CommunicationObject) |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| Fault() |
Fa sì che un oggetto di comunicazione passi dallo stato corrente allo stato di errore. (Ereditato da CommunicationObject) |
| GetCommunicationObjectType() |
Ottiene il tipo di oggetto di comunicazione. (Ereditato da CommunicationObject) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| IncrementManualFlowControlLimit(Int32) |
Aumenta il limite alla frequenza di flusso dei messaggi al servizio ospitato da un incremento specificato. (Ereditato da ServiceHostBase) |
| InitializeDescription(Object, UriSchemeKeyedCollection) |
Inizializza una descrizione del servizio ospitato in base all'istanza e agli indirizzi di base specificati. |
| InitializeDescription(Type, UriSchemeKeyedCollection) |
Inizializza una descrizione del servizio ospitato in base al tipo e agli indirizzi di base specificati. |
| InitializeDescription(UriSchemeKeyedCollection) |
Crea e inizializza l'host del servizio con le descrizioni del contratto e del servizio. (Ereditato da ServiceHostBase) |
| InitializeRuntime() |
Inizializza il runtime per l'host del servizio. (Ereditato da ServiceHostBase) |
| LoadConfigurationSection(ServiceElement) |
Carica l'elemento del servizio dal file di configurazione del servizio ospitato. (Ereditato da ServiceHostBase) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| OnAbort() |
Interrompe il servizio. (Ereditato da ServiceHostBase) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona richiamata sulla chiusura dell'host del servizio. (Ereditato da ServiceHostBase) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Avvia un'operazione asincrona richiamata all'apertura dell'host del servizio. (Ereditato da ServiceHostBase) |
| OnClose(TimeSpan) |
Chiude il servizio ospitato, inclusi i dispatcher del canale e i contesti e i listener dell'istanza associati. (Ereditato da ServiceHostBase) |
| OnClosed() |
Elimina i servizi eliminabili ospitati quando l'host del servizio viene chiuso. |
| OnClosing() |
Richiamato durante la transizione di un oggetto di comunicazione nello stato di chiusura. (Ereditato da CommunicationObject) |
| OnEndClose(IAsyncResult) |
Completa un'operazione asincrona richiamata alla chiusura dell'host del servizio. (Ereditato da ServiceHostBase) |
| OnEndOpen(IAsyncResult) |
Completa un'operazione asincrona richiamata all'apertura dell'host del servizio. (Ereditato da ServiceHostBase) |
| OnFaulted() |
Inserisce l'elaborazione in un oggetto di comunicazione dopo la transizione allo stato di errore a causa della chiamata di un'operazione di errore sincrono. (Ereditato da CommunicationObject) |
| OnOpen(TimeSpan) |
Apre i dispatcher del canale. (Ereditato da ServiceHostBase) |
| OnOpened() |
Ottiene le credenziali del servizio, l'autenticazione del servizio e il comportamento di autorizzazione per il servizio ospitato. (Ereditato da ServiceHostBase) |
| OnOpening() |
Richiamato durante la transizione di un oggetto di comunicazione nello stato di apertura. (Ereditato da CommunicationObject) |
| Open() |
Fa sì che un oggetto di comunicazione passi dallo stato creato allo stato aperto. (Ereditato da CommunicationObject) |
| Open(TimeSpan) |
Fa sì che un oggetto di comunicazione passi dallo stato creato allo stato aperto entro un intervallo di tempo specificato. (Ereditato da CommunicationObject) |
| ReleasePerformanceCounters() |
Rilascia i contatori delle prestazioni del servizio e del dispatcher del canale per il servizio ospitato. (Ereditato da ServiceHostBase) |
| SetEndpointAddress(ServiceEndpoint, String) |
Imposta l'indirizzo endpoint dell'endpoint specificato sull'indirizzo specificato. (Ereditato da ServiceHostBase) |
| ThrowIfDisposed() |
Genera un'eccezione se l'oggetto di comunicazione viene eliminato. (Ereditato da CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
Genera un'eccezione se l'oggetto di comunicazione la State proprietà non è impostata sullo Created stato . (Ereditato da CommunicationObject) |
| ThrowIfDisposedOrNotOpen() |
Genera un'eccezione se l'oggetto di comunicazione non è nello Opened stato . (Ereditato da CommunicationObject) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Eventi
| Nome | Descrizione |
|---|---|
| Closed |
Si verifica quando un oggetto di comunicazione passa allo stato chiuso. (Ereditato da CommunicationObject) |
| Closing |
Si verifica quando un oggetto di comunicazione passa allo stato di chiusura. (Ereditato da CommunicationObject) |
| Faulted |
Si verifica quando un oggetto di comunicazione passa allo stato di errore. (Ereditato da CommunicationObject) |
| Opened |
Si verifica quando un oggetto di comunicazione passa allo stato aperto. (Ereditato da CommunicationObject) |
| Opening |
Si verifica quando un oggetto di comunicazione passa allo stato di apertura. (Ereditato da CommunicationObject) |
| UnknownMessageReceived |
Si verifica quando viene ricevuto un messaggio sconosciuto. (Ereditato da ServiceHostBase) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IDisposable.Dispose() |
Chiude l'host del servizio. (Ereditato da ServiceHostBase) |