Sdílet prostřednictvím


ServiceDescription.GetService Metoda

Definice

Vrátí popis služby inicializovaný zadaným objektem nebo typem služby.

Přetížení

GetService(Object)

Vrátí popis služby inicializovaný zadaným objektem služby.

GetService(Type)

Vrátí popis služby inicializovaný se zadaným typem služby.

GetService(Object)

Vrátí popis služby inicializovaný zadaným objektem služby.

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

Parametry

serviceImplementation
Object

Tím Object se služba implementuje.

Návraty

ServiceDescription

Zadaný ServiceDescription objekt služby.

Výjimky

serviceImplementation je null.

Příklady

Následující ukázka ukazuje, jak iterovat chování služby obsažené v popisu služby.

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

Poznámky

Tuto metodu použijte k reflexi chování pomocí programovacího modelu wcf (Windows Communication Foundation) při nahrazení ServiceHostBase vlastním hostitelským mechanismem.

GetService(Object)inicializuje Name, a NamespaceConfigurationName vlastnosti, a zajišťuje, že ServiceBehaviorAttribute je připojen ke službě a přidá všechny relevantní chování služby do Behaviors.

Platí pro

GetService(Type)

Vrátí popis služby inicializovaný se zadaným typem služby.

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

Parametry

serviceType
Type

Služba Type .

Návraty

ServiceDescription

Zadaný ServiceDescription typ služby.

Výjimky

serviceType je null.

Příklady

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()

Poznámky

Tuto metodu použijte k reflexi chování pomocí programovacího modelu wcf (Windows Communication Foundation) při nahrazení ServiceHostBase vlastním hostitelským mechanismem.

GetService(Type) inicializuje Name, Namespacea ConfigurationName vlastnosti, odráží typ pro všechny ServiceBehaviorAttribute objekty a přidá je do Behaviorsa zajišťuje, že ServiceBehaviorAttribute je připojen ke službě.

Platí pro