2014-09-08 5 views
0

두 가지 비헤비어가있는 서비스가 있습니다. 하나는 스로틀 링용이고 다른 하나는 메타 데이터 교환 용입니다. 어떻게 서비스에서 둘 다 가능하게 하는가? 우리가 먼저 활성화하면 Second는 비활성화되고 그 반대도 마찬가지입니다.WCF : 두 가지 비헤이비어를 가진 하나의 서비스 (behaviorConfiguration)

내 행동 이름은 MexBehaviour 및 ThrottlingBehaviour입니다. 서비스는 다음 줄 중 하나에서만 작동하지만 두 가지 모두에서 작동하지 않습니다.

<service behaviorConfiguration="ThrottlingBehaviour" 
        name="ThrottlingService.ThrottlingService"> 

<service behaviorConfiguration="MexBehaviour" 
        name="ThrottlingService.ThrottlingService"> 

한 번에 두 가지를 모두 지정하는 방법은 무엇입니까?

답변

1

동작 구성은 서비스 동작을 어떻게 지정할지 지정합니다. 행동을 결합하려면, 당신은 이러한 조합과 함께 동작을 만든 다음

당신의 WCF 메타 데이터 및 제한 행위로 작업하는 경우는이

<behaviors> 
    <serviceBehaviors> 
    <behavior name="metathrottle"> 
     <!-- To avoid disclosing metadata information, set the values below to false before deployment --> 
     <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/> 
     <serviceThrottling maxConcurrentCalls="100"/> 
    </behavior> 
    </serviceBehaviors> 
</behaviors> 
같은 새로운 동작을 만들 것을 결합하는 행위를 가리키는 것

귀하의 서비스에서이 구성을 가리키면

<service behaviorConfiguration="metathrottle" name="ThrottlingService.ThrottlingService">