Freigeben über


ServiceDescription.GetService Methode

Definition

Gibt eine mit einem angegebenen Dienstobjekt oder -typ initialisierte Dienstbeschreibung zurück.

Überlädt

GetService(Object)

Gibt eine mit einem angegebenen Dienstobjekt initialisierte Dienstbeschreibung zurück.

GetService(Type)

Gibt eine mit einem angegebenen Diensttyp initialisierte Dienstbeschreibung zurück.

GetService(Object)

Gibt eine mit einem angegebenen Dienstobjekt initialisierte Dienstbeschreibung zurück.

public:
 static System::ServiceModel::Description::ServiceDescription ^ GetService(System::Object ^ serviceImplementation);
public static System.ServiceModel.Description.ServiceDescription GetService (object serviceImplementation);
static member GetService : obj -> System.ServiceModel.Description.ServiceDescription
Public Shared Function GetService (serviceImplementation As Object) As ServiceDescription

Parameter

serviceImplementation
Object

Das Object, das den Dienst implementiert.

Gibt zurück

ServiceDescription

Die ServiceDescription für das angegebene Dienstobjekt.

Ausnahmen

serviceImplementation ist null.

Beispiele

Das folgende Beispiel zeigt, wie die in der Dienstbeschreibung enthaltenen Dienstverhalten durchlaufen werden.

// Instantiate a service description specifying a service object
// Note: Endpoints collection and other properties will be null since
// we have not specified them
CalculatorService svcObj = new CalculatorService();
ServiceDescription sd3 = ServiceDescription.GetService(svcObj);
String serviceName = sd3.Name;
Console.WriteLine("Service name: {0}", serviceName);
ServiceDescription d = ServiceDescription.GetService(typeof(CalculatorService));
foreach (IServiceBehavior isb in d.Behaviors)
{
    Console.WriteLine(isb.GetType());
}
Console.WriteLine();
' Instantiate a service description specifying a service object
' Note: Endpoints collection and other properties will be null since 
' we have not specified them
Dim svcObj As New CalculatorService()
Dim sd3 As ServiceDescription = ServiceDescription.GetService(svcObj)
Dim serviceName = sd3.Name
Console.WriteLine("Service name: {0}", serviceName)
Dim d As ServiceDescription = ServiceDescription.GetService(GetType(CalculatorService))
For Each isb As IServiceBehavior In d.Behaviors
    Console.WriteLine(CType(isb, Object).GetType())
Next isb
Console.WriteLine()

Hinweise

Verwenden Sie diese Methode, um Verhaltensweisen mithilfe des programmiermodells Windows Communication Foundation (WCF) zu reflektieren, wenn Sie den eigenen Hostingmechanismus ersetzenServiceHostBase.

GetService(Object) initialisiert die Eigenschaften Name, Namespace und ConfigurationName, und stellt sicher, dass ServiceBehaviorAttribute an den Dienst angefügt wird und relevante Dienstverhalten zu Behaviors hinzugefügt werden.

Gilt für

GetService(Type)

Gibt eine mit einem angegebenen Diensttyp initialisierte Dienstbeschreibung zurück.

public:
 static System::ServiceModel::Description::ServiceDescription ^ GetService(Type ^ serviceType);
public static System.ServiceModel.Description.ServiceDescription GetService (Type serviceType);
static member GetService : Type -> System.ServiceModel.Description.ServiceDescription
Public Shared Function GetService (serviceType As Type) As ServiceDescription

Parameter

serviceType
Type

Der Type des Diensts.

Gibt zurück

ServiceDescription

Die ServiceDescription für den angegebenen Diensttyp.

Ausnahmen

serviceType ist null.

Beispiele

ServiceDescription d = ServiceDescription.GetService(new CalculatorService());
foreach (IServiceBehavior isb in d.Behaviors)
{
    Console.WriteLine(isb.GetType());
}
Console.WriteLine();
Dim d As ServiceDescription = ServiceDescription.GetService(New CalculatorService())
For Each isb As IServiceBehavior In d.Behaviors
    Console.WriteLine(CType(isb, Object).GetType())
Next isb
Console.WriteLine()

Hinweise

Verwenden Sie diese Methode, um Verhaltensweisen mithilfe des programmiermodells Windows Communication Foundation (WCF) zu reflektieren, wenn Sie den eigenen Hostingmechanismus ersetzenServiceHostBase.

GetService(Type) initialisiert die Eigenschaften Name, Namespace und ConfigurationName, spiegelt die Typen für die ServiceBehaviorAttribute-Objekte, fügt sie Behaviors hinzu und stellt sicher, dass ServiceBehaviorAttribute an den Dienst angefügt wird.

Gilt für