次の方法で共有


ServiceEndpoint.Behaviors プロパティ

定義

サービス エンドポイントの動作を取得します。

public:
 property System::Collections::Generic::KeyedByTypeCollection<System::ServiceModel::Description::IEndpointBehavior ^> ^ Behaviors { System::Collections::Generic::KeyedByTypeCollection<System::ServiceModel::Description::IEndpointBehavior ^> ^ get(); };
public System.Collections.Generic.KeyedByTypeCollection<System.ServiceModel.Description.IEndpointBehavior> Behaviors { get; }
member this.Behaviors : System.Collections.Generic.KeyedByTypeCollection<System.ServiceModel.Description.IEndpointBehavior>
Public ReadOnly Property Behaviors As KeyedByTypeCollection(Of IEndpointBehavior)

プロパティ値

KeyedByTypeCollection<IEndpointBehavior>

サービス エンドポイントに指定された動作を含む KeyedByTypeCollection<TItem> 型の IEndpointBehavior

カスタム エンドポイント動作を追加し、その動作にアクセスする方法を次のコードに示します。

Uri baseAddress = new Uri("http://localhost:8001/Simple");
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);

ServiceEndpoint endpoint = serviceHost.AddServiceEndpoint(
    typeof(ICalculator),
    new WSHttpBinding(),
    "CalculatorServiceObject");

endpoint.Behaviors.Add(new MyEndpointBehavior());

Console.WriteLine("List all behaviors:");
foreach (IEndpointBehavior behavior in endpoint.Behaviors)
{
    Console.WriteLine("Behavior: {0}", behavior.ToString());
}
Dim baseAddress As New Uri("http://localhost:8001/Simple")
Dim serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)

Dim endpoint As ServiceEndpoint = serviceHost.AddServiceEndpoint(GetType(ICalculator), New WSHttpBinding(), "CalculatorServiceObject")

endpoint.Behaviors.Add(New MyEndpointBehavior())

Console.WriteLine("List all behaviors:")
For Each behavior As IEndpointBehavior In endpoint.Behaviors
    Console.WriteLine("Behavior: {0}", CType(behavior, Object).ToString())
Next behavior

注釈

説明階層からアクセスできる動作の型は、特定のレベルに限定されます。 ServiceEndpoint から、IEndpointBehavior にアクセスできます。

エンドポイントに関連付けられた IContractBehavior にアクセスする場合は、Contract プロパティを使用してエンドポイントのコントラクトを取得します。 次に、Behaviors プロパティを呼び出して、エンドポイントに関連付けられている KeyedByTypeCollection<TItem> オブジェクトの IContractBehavior を取得します。

適用対象