ServiceDescription.Behaviors Eigenschap

Definitie

Hiermee haalt u het gedrag op dat is gekoppeld aan de service.

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

Waarde van eigenschap

Het KeyedByTypeCollection<TItem> type IServiceBehavior dat het gedrag bevat dat is gekoppeld aan de service.

Voorbeelden

// Iterate through the list of behaviors in the ServiceDescription
ServiceDescription svcDesc = serviceHost.Description;
KeyedByTypeCollection<IServiceBehavior> sbCol = svcDesc.Behaviors;
foreach (IServiceBehavior behavior in sbCol)
{
    Console.WriteLine("Behavior: {0}", behavior.ToString());
}
Uri baseAddress = new Uri("http://localhost:8001/Simple");
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);

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

// Enable Mex
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
serviceHost.Description.Behaviors.Add(smb);

ServiceDescription sd = serviceHost.Description;
sd.Behaviors.Add(new MyCustomBehavior());

serviceHost.Open();
' Iterate through the list of behaviors in the ServiceDescription
Dim svcDesc As ServiceDescription = serviceHost.Description
Dim sbCol As KeyedByTypeCollection(Of IServiceBehavior) = svcDesc.Behaviors
For Each behavior As IServiceBehavior In sbCol
    Console.WriteLine("Behavior: {0}", CType(behavior, Object).ToString())
Next behavior
Dim baseAddress As New Uri("http://localhost:8001/Simple")
Dim serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)

serviceHost.AddServiceEndpoint(GetType(ICalculator), New WSHttpBinding(), "CalculatorServiceObject")

' Enable Mex
Dim smb As New ServiceMetadataBehavior()
smb.HttpGetEnabled = True
serviceHost.Description.Behaviors.Add(smb)

Dim sd As ServiceDescription = serviceHost.Description
sd.Behaviors.Add(New MyCustomBehavior())

serviceHost.Open()

Opmerkingen

Gebruik deze methode wanneer u aangepast gedrag toevoegt om uit te breiden ServiceHost. Programmatisch moet Add(T) u het gedrag van de aangepaste service aan de Behaviors voorzijde aanroepen wanneer u de Open methode voor het ServiceHost object aanroept.

Het type gedrag dat toegankelijk is vanuit de beschrijvingshiƫrarchie, is gericht op het specifieke niveau. Vanaf het ServiceDescriptionIServiceBehavior hotel is het toegankelijk.

Als u in plaats daarvan toegang wilt tot het IEndpointBehavior gekoppelde eindpunt, kunt u de eindpunten voor de service verkrijgen met behulp van de Endpoints eigenschap. Haal vervolgens de ServiceEndpoint verzameling op met de Find methode die gebruikmaakt van de relevante zoekcriteria en roep de eigenschap aan om de Behaviors verzameling van de IEndpointBehavior objecten te verkrijgen.

Van toepassing op