Поделиться через


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<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, связанных с конечной точкой.

Применяется к