次の方法で共有


ServiceDescription.GetService メソッド

定義

指定したサービス オブジェクトまたはサービス型を使用して初期化されたサービスの説明を返します。

オーバーロード

GetService(Object)

指定したサービス オブジェクトを使用して初期化されたサービスの説明を返します。

GetService(Type)

指定したサービス型を使用して初期化されたサービスの説明を返します。

GetService(Object)

指定したサービス オブジェクトを使用して初期化されたサービスの説明を返します。

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

パラメーター

serviceImplementation
Object

サービスを実装する Object

戻り値

ServiceDescription

提供されたサービス オブジェクトの ServiceDescription

例外

serviceImplementationnullです。

サービスの説明に含まれるサービスの動作を反復処理する方法を次の例に示します。

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

注釈

独自のホスティング メカニズムに置き換えるときServiceHostBaseに、Windows Communication Foundation (WCF) プログラミング モデルを使用した動作を反映するには、このメソッドを使用します。

GetService(Object) は、NameNamespace、および ConfigurationName の各プロパティを初期化します。また、ServiceBehaviorAttribute がサービスに結び付けられ、関連するサービスの動作が Behaviors に追加されることを保証します。

適用対象

GetService(Type)

指定したサービス型を使用して初期化されたサービスの説明を返します。

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

パラメーター

serviceType
Type

サービスの Type

戻り値

ServiceDescription

提供されたサービス型の ServiceDescription

例外

serviceTypenullです。

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

注釈

独自のホスティング メカニズムに置き換えるときServiceHostBaseに、Windows Communication Foundation (WCF) プログラミング モデルを使用した動作を反映するには、このメソッドを使用します。

GetService(Type) は、NameNamespace、および ConfigurationName プロパティを初期化し、ServiceBehaviorAttribute オブジェクトの型に反映させてそれらを Behaviors に追加し、ServiceBehaviorAttribute がサービスに結び付けられていることを確認します。

適用対象