Condividi tramite


ServiceDescription.GetService Metodo

Definizione

Restituisce una descrizione del servizio inizializzata da un oggetto o un tipo di servizio specificato.

Overload

GetService(Object)

Restituisce una descrizione del servizio inizializzata da un oggetto del servizio specificato.

GetService(Type)

Restituisce una descrizione del servizio inizializzata da un tipo del servizio specificato.

GetService(Object)

Restituisce una descrizione del servizio inizializzata da un oggetto del servizio specificato.

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

Parametri

serviceImplementation
Object

La classe Object che implementa il servizio.

Restituisce

ServiceDescription

L'oggetto della classe ServiceDescription relativo all'oggetto del servizio fornito.

Eccezioni

serviceImplementation è null.

Esempio

Nell'esempio seguente viene illustrato come scorrere i comportamenti del servizio contenuti nella descrizione del servizio.

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

Commenti

Usare questo metodo per riflettere sui comportamenti usando il modello di programmazione Windows Communication Foundation (WCF) quando si sostituisce ServiceHostBase con il proprio meccanismo di hosting.

GetService(Object) inizializza le proprietà Name, Namespace e ConfigurationName e di garantire che ServiceBehaviorAttribute venga allegato al servizio e aggiunga i comportamenti del servizio rilevanti a Behaviors.

Si applica a

GetService(Type)

Restituisce una descrizione del servizio inizializzata da un tipo del servizio specificato.

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

Parametri

serviceType
Type

Classe Type del servizio.

Restituisce

ServiceDescription

L'oggetto della classe ServiceDescription relativo al tipo di servizio fornito.

Eccezioni

serviceType è null.

Esempio

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

Commenti

Usare questo metodo per riflettere sui comportamenti usando il modello di programmazione Windows Communication Foundation (WCF) quando si sostituisce ServiceHostBase con il proprio meccanismo di hosting.

GetService(Type) inizializza le proprietà Name, Namespace, e ConfigurationName, di eseguire la reflection sul tipo per tutti gli oggettiServiceBehaviorAttribute, di aggiungerli a Behaviors e di garantire che ServiceBehaviorAttribute sia allegato al servizio.

Si applica a