ServiceDescription.Behaviors ServiceDescription.Behaviors ServiceDescription.Behaviors ServiceDescription.Behaviors Property

Définition

Obtient les comportements associés au service.Gets the behaviors associated with the 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)

Valeur de propriété

KeyedByTypeCollection<TItem> de type IServiceBehavior qui contient les comportements associés au service.The KeyedByTypeCollection<TItem> of type IServiceBehavior that contains the behaviors associated with the service.

Exemples

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

Remarques

Utilisez cette méthode lors de l'ajout de comportements personnalisés pour étendre ServiceHost.Use this method when adding custom behaviors to extend ServiceHost. Par programme, vous devez Add(T) le comportement de service personnalisé aux Behaviors avant d'appeler la méthode Open sur l'objet ServiceHost.Programmatically, you must Add(T) the custom service behavior to the Behaviors prior to when you call the Open method on the ServiceHost object.

Le type de comportement qui est accessible à partir de la hiérarchie de description est inclus à la portée du niveau spécifique.The type of behavior that is accessible from the description hierarchy is scoped to the specific level. À partir de la ServiceDescription, le IServiceBehavior est accessible.From the ServiceDescription the IServiceBehavior is accessible.

Si vous souhaitez accéder au IEndpointBehavior plutôt associée à un point de terminaison, vous pouvez obtenir les points de terminaison pour le service à l'aide de la propriété Endpoints.If you want access to the IEndpointBehavior associated with an endpoint instead, you can obtain the endpoints for the service using the Endpoints property. Puis récupérer le ServiceEndpoint à partir de la collection avec le Find méthode qui utilise les critères de recherche pertinents, puis appelez le Behaviors propriété pour obtenir la collection de la IEndpointBehavior objets.Then retrieve the ServiceEndpoint from the collection with the Find method that employs the relevant search criteria, and call the Behaviors property to obtain the collection of the IEndpointBehavior objects.

S’applique à