ServiceDescription.Behaviors 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
서비스와 연결된 동작을 가져옵니다.
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)
속성 값
서비스와 연결된 동작을 포함하는 KeyedByTypeCollection<TItem> 형식의 IServiceBehavior입니다.
예제
// 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()
설명
사용자 지정 동작을 추가하여 ServiceHost를 확장할 때 이 메서드를 사용합니다. Add(T) 개체에서 Behaviors 메서드를 호출하기 전에 Open를 사용하여 ServiceHost에 사용자 지정 서비스 동작을 프로그래밍 방식으로 추가해야 합니다.
설명 계층에서 액세스할 수 있는 동작 형식의 범위는 특정 수준으로 한정됩니다. ServiceDescription는 IServiceBehavior에서 액세스할 수 있습니다.
엔드포인트와 연결된 IEndpointBehavior에 대신 액세스하려면 Endpoints 속성을 사용하여 서비스에 대한 엔드포인트를 가져오면 됩니다. 검색 한 다음를 ServiceEndpoint 사용 하 여 컬렉션에서 합니다 Find 관련 검색 조건 및 호출을 사용 하는 메서드는 Behaviors 속성의 컬렉션을는 IEndpointBehavior 개체입니다.