Freigeben über


ServiceHost Klasse

Definition

Stellt einen Host für Dienste bereit.

public ref class ServiceHost : System::ServiceModel::ServiceHostBase
public class ServiceHost : System.ServiceModel.ServiceHostBase
type ServiceHost = class
    inherit ServiceHostBase
Public Class ServiceHost
Inherits ServiceHostBase
Vererbung
Abgeleitet

Beispiele

// 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

Hinweise

Implementiert den Host, der vom Windows Communication Foundation (WCF)-Dienstmodellprogrammiermodell verwendet wird.

Verwenden Sie die ServiceHost Klasse, um einen Dienst für die Verwendung von Clientanwendungen zu konfigurieren und verfügbar zu machen, wenn Sie Internetinformationsdienste (IIS) oder Windows Aktivierungsdienste (WAS) nicht verwenden, um einen Dienst verfügbar zu machen. Sowohl IIS als auch WAS interagieren für Sie mit einem ServiceHost-Objekt.

Um einen Dienst für die Verwendung durch Anrufer verfügbar zu machen, erfordert WCF eine vollständige Dienstbeschreibung (dargestellt durch die ServiceDescription Klasse). Die ServiceHost Klasse erstellt eine ServiceDescription aus den Diensttyp- und Konfigurationsinformationen und verwendet dann diese Beschreibung, um Objekte für jeden Endpunkt in der Beschreibung zu erstellen ChannelDispatcher .

Verwenden Sie ein Objekt, um einen ServiceHost Dienst zu laden, Endpunkte zu konfigurieren, Sicherheitseinstellungen anzuwenden und Listener zu starten, um eingehende Anforderungen zu behandeln.

Konstruktoren

ServiceHost()

Initialisiert eine neue Instanz der ServiceHost-Klasse.

ServiceHost(Object, Uri[])

Initialisiert eine neue Instanz der ServiceHost-Klasse mit der angegebenen Dienstinstanz und ihrer Basisadresse.

ServiceHost(Type, Uri[])

Initialisiert eine neue Instanz der ServiceHost-Klasse mit dem angegebenen Diensttyp und seiner Basisadresse.

Eigenschaften

Authentication

Ruft das Dienstauthentifizierungsverhalten ab.

(Geerbt von ServiceHostBase)
Authorization

Ruft das Autorisierungsverhalten für den gehosteten Dienst ab.

(Geerbt von ServiceHostBase)
BaseAddresses

Ruft die vom gehosteten Dienst verwendeten Basisadressen ab.

(Geerbt von ServiceHostBase)
ChannelDispatchers

Ruft die Auflistung der vom Diensthost verwendeten Kanalverteiler ab.

(Geerbt von ServiceHostBase)
CloseTimeout

Ruft das Zeitintervall ab oder legt das Zeitintervall fest, das für das Schließen des Diensthosts zulässig ist.

(Geerbt von ServiceHostBase)
Credentials

Ruft die Anmeldeinformationen für den gehosteten Dienst ab.

(Geerbt von ServiceHostBase)
DefaultCloseTimeout

Ruft das standardmäßige Zeitintervall ab, das für das Schließen des Diensthosts zulässig ist.

(Geerbt von ServiceHostBase)
DefaultOpenTimeout

Ruft das standardmäßige Zeitintervall ab, das für das Öffnen des Diensthosts zulässig ist.

(Geerbt von ServiceHostBase)
Description

Ruft die Beschreibung des gehosteten Diensts ab.

(Geerbt von ServiceHostBase)
Extensions

Ruft die Erweiterungen für den aktuellen angegebenen Diensthost ab.

(Geerbt von ServiceHostBase)
ImplementedContracts

Ruft die durch den gehosteten Dienst implementierten Verträge ab.

(Geerbt von ServiceHostBase)
IsDisposed

Ruft einen Wert ab, mit dem angegeben wird, ob das Kommunikationsobjekt verworfen wurde.

(Geerbt von CommunicationObject)
ManualFlowControlLimit

Ruft die Datenflusskontrollengrenze für durch den gehosteten Dienst empfangenen Nachrichten ab oder legt sie fest.

(Geerbt von ServiceHostBase)
OpenTimeout

Ruft das Zeitintervall ab oder legt das Zeitintervall fest, das für das Öffnen des Diensthosts zulässig ist.

(Geerbt von ServiceHostBase)
SingletonInstance

Ruft die Singletoninstanz des gehosteten Diensts ab.

State

Ruft einen Wert ab, der den aktuellen Zustand des Kommunikationsobjekts angibt.

(Geerbt von CommunicationObject)
ThisLock

Ruft die gegenseitig exklusive Sperre ab, die die Klasseninstanz während eines Zustandsübergangs schützt.

(Geerbt von CommunicationObject)

Methoden

Abort()

Bewirkt, dass ein Kommunikationsobjekt unmittelbar vom aktuellen Zustand in den Schließzustand übergeht.

(Geerbt von CommunicationObject)
AddBaseAddress(Uri)

Fügt dem Diensthost eine Basisadresse hinzu.

(Geerbt von ServiceHostBase)
AddDefaultEndpoints()

Fügt Dienstendpunkte für alle Basisadressen in jedem Vertrag im Diensthost mit der Standardbindung hinzu.

(Geerbt von ServiceHostBase)
AddServiceEndpoint(ServiceEndpoint)

Fügt den angegebenen Dienstendpunkt dem gehosteten Dienst hinzu.

(Geerbt von ServiceHostBase)
AddServiceEndpoint(String, Binding, String)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung und einer Endpunktadresse hinzu.

(Geerbt von ServiceHostBase)
AddServiceEndpoint(String, Binding, String, Uri)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung, einer Endpunktadresse und einem URI hinzu, der die Adresse enthält, die er überwacht.

(Geerbt von ServiceHostBase)
AddServiceEndpoint(String, Binding, Uri)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung und einem URI mit der Endpunktadresse hinzu.

(Geerbt von ServiceHostBase)
AddServiceEndpoint(String, Binding, Uri, Uri)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit dem angegebenen Vertrag, einer Bindung und URIs mit den Endpunkt- und Überwachungsadressen hinzu.

(Geerbt von ServiceHostBase)
AddServiceEndpoint(Type, Binding, String)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung und einer Endpunktadresse hinzu.

AddServiceEndpoint(Type, Binding, String, Uri)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung, einer Endpunktadresse und einem URI, den der Dienst überwacht, hinzu.

AddServiceEndpoint(Type, Binding, Uri)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung und einem URI mit der Endpunktadresse hinzu.

AddServiceEndpoint(Type, Binding, Uri, Uri)

Fügt dem gehosteten Dienst einen Dienstendpunkt mit einem angegebenen Vertrag, einer Bindung, einem URI mit der Endpunktadresse und einem URI, den der Dienst überwacht, hinzu.

ApplyConfiguration()

Lädt die Dienstbeschreibung aus der Konfigurationsdatei und wendet sie auf die Laufzeit an, die erstellt wird.

ApplyConfiguration()

Lädt die Dienstbeschreibungsinformationen aus der Konfigurationsdatei und wendet sie auf die Laufzeit an, die erstellt wird.

(Geerbt von ServiceHostBase)
BeginClose(AsyncCallback, Object)

Startet einen asynchronen Vorgang, um ein Kommunikationsobjekt zu schließen.

(Geerbt von CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Startet einen asynchronen Vorgang, um ein Kommunikationsobjekt mit einem festgelegten Timeout zu schließen.

(Geerbt von CommunicationObject)
BeginOpen(AsyncCallback, Object)

Startet einen asynchronen Vorgang, um ein Kommunikationsobjekt zu öffnen.

(Geerbt von CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Startet einen asynchronen Vorgang, um ein Kommunikationsobjekt innerhalb eines festgelegten Zeitraums zu öffnen.

(Geerbt von CommunicationObject)
Close()

Bewirkt, dass ein Kommunikationsobjekt vom aktuellen Zustand in den geschlossenen Zustand übergeht.

(Geerbt von CommunicationObject)
Close(TimeSpan)

Bewirkt den Übergang eines Kommunikationsobjekts innerhalb eines angegebenen Zeitraums vom aktuellen Zustand in den geschlossenen Zustand.

(Geerbt von CommunicationObject)
CreateDescription(IDictionary<String,ContractDescription>)

Erstellt eine Beschreibung des gehosteten Diensts.

EndClose(IAsyncResult)

Beendet einen asynchronen Vorgang, um ein Kommunikationsobjekt zu schließen.

(Geerbt von CommunicationObject)
EndOpen(IAsyncResult)

Beendet einen asynchronen Vorgang, um ein Kommunikationsobjekt zu öffnen.

(Geerbt von CommunicationObject)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Fault()

Bewirkt, dass ein Kommunikationsobjekt vom aktuellen Zustand in den Fehlerzustand übergeht.

(Geerbt von CommunicationObject)
GetCommunicationObjectType()

Ruft den Typ des Kommunikationsobjekts ab.

(Geerbt von CommunicationObject)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IncrementManualFlowControlLimit(Int32)

Erhöht die Grenze der Datenflussrate der Nachrichten an den gehosteten Dienst um eine angegebene Schrittweite.

(Geerbt von ServiceHostBase)
InitializeDescription(Object, UriSchemeKeyedCollection)

Initialisiert eine Beschreibung des auf der Grundlage seiner Instanz und der angegebenen Basisadressen gehosteten Dienst.

InitializeDescription(Type, UriSchemeKeyedCollection)

Initialisiert eine Beschreibung des auf der Grundlage seines Typs und der angegebenen Basisadressen gehosteten Dienst.

InitializeDescription(UriSchemeKeyedCollection)

Erstellt und initialisiert den Diensthost mit dem Vertrag und den Dienstbeschreibungen.

(Geerbt von ServiceHostBase)
InitializeRuntime()

Initialisiert die Laufzeit für den Diensthost.

(Geerbt von ServiceHostBase)
LoadConfigurationSection(ServiceElement)

Lädt das Dienstelement aus der Konfigurationsdatei des gehosteten Diensts.

(Geerbt von ServiceHostBase)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnAbort()

Bricht den Dienst ab.

(Geerbt von ServiceHostBase)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Startet einen durch das Schließen des Diensthosts aufgerufenen asynchronen Vorgang.

(Geerbt von ServiceHostBase)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Startet einen durch das Öffnen des Diensthosts aufgerufenen asynchronen Vorgang.

(Geerbt von ServiceHostBase)
OnClose(TimeSpan)

Schließt den gehosteten Dienst, einschließlich Kanalverteiler und zugeordneter Instanzkontexte und Listener.

(Geerbt von ServiceHostBase)
OnClosed()

Verwirft gehostete Dienste, wenn der Diensthost geschlossen wird.

OnClosing()

Wird während des Übergangs eines Kommunikationsobjekts in den Schließzustand aufgerufen.

(Geerbt von CommunicationObject)
OnEndClose(IAsyncResult)

Schließt einen durch das Schließen des Diensthosts aufgerufenen asynchronen Vorgang ab.

(Geerbt von ServiceHostBase)
OnEndOpen(IAsyncResult)

Schließt einen durch das Öffnen des Diensthosts aufgerufenen asynchronen Vorgang ab.

(Geerbt von ServiceHostBase)
OnFaulted()

Fügt Verarbeitung auf einem Kommunikationsobjekt ein, nachdem aufgrund des Aufrufs eines synchronen Fehlervorgangs der Übergang zum Fehlerzustand stattgefunden hat.

(Geerbt von CommunicationObject)
OnOpen(TimeSpan)

Öffnet die Kanalverteiler.

(Geerbt von ServiceHostBase)
OnOpened()

Ruft die Dienstanmeldeinformationen, die Dienstauthentifizierung und das Autorisierungsverhalten für den gehosteten Dienst ab.

(Geerbt von ServiceHostBase)
OnOpening()

Wird während des Übergangs eines Kommunikationsobjekts in den Öffnungszustand aufgerufen.

(Geerbt von CommunicationObject)
Open()

Bewirkt den Übergang eines Kommunikationsobjekts aus dem Erstellt-Zustand in den Geöffnet-Zustand.

(Geerbt von CommunicationObject)
Open(TimeSpan)

Bewirkt den Übergang eines Kommunikationsobjekts innerhalb eines angegebenen Zeitraums vom Erstellt-Zustand in den Geöffnet-Zustand.

(Geerbt von CommunicationObject)
ReleasePerformanceCounters()

Gibt die Leistungsindikatoren für den Dienst und die Kanalverteiler für den gehosteten Dienst frei.

(Geerbt von ServiceHostBase)
SetEndpointAddress(ServiceEndpoint, String)

Legt die Endpunktadresse des angegebenen Endpunkts auf die angegebene Adresse fest.

(Geerbt von ServiceHostBase)
ThrowIfDisposed()

Löst eine Ausnahme aus, wenn das Kommunikationsobjekt verworfen wird.

(Geerbt von CommunicationObject)
ThrowIfDisposedOrImmutable()

Löst eine Ausnahme aus, wenn das Kommunikationsobjekt der State-Eigenschaft nicht auf den Created-Zustand festgelegt wurde.

(Geerbt von CommunicationObject)
ThrowIfDisposedOrNotOpen()

Löst eine Ausnahme aus, wenn sich das Kommunikationsobjekt nicht im Opened-Zustand befindet.

(Geerbt von CommunicationObject)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

Closed

Tritt ein, sobald ein Kommunikationsobjekt in den geschlossenen Zustand übergeht.

(Geerbt von CommunicationObject)
Closing

Tritt ein, sobald ein Kommunikationsobjekt in den Schließzustand übergeht.

(Geerbt von CommunicationObject)
Faulted

Tritt ein, sobald ein Kommunikationsobjekt in den Fehlerzustand übergeht.

(Geerbt von CommunicationObject)
Opened

Tritt ein, sobald ein Kommunikationsobjekt in den Geöffnet-Zustand übergeht.

(Geerbt von CommunicationObject)
Opening

Tritt ein, sobald ein Kommunikationsobjekt in den Öffnungszustand übergeht.

(Geerbt von CommunicationObject)
UnknownMessageReceived

Tritt ein, wenn eine unbekannte Nachricht empfangen wird.

(Geerbt von ServiceHostBase)

Explizite Schnittstellenimplementierungen

IDisposable.Dispose()

Schließt den Diensthost.

(Geerbt von ServiceHostBase)

Gilt für