2011-03-30 3 views
0

나는 다음과 같은 WCF 끝점 구성이 있습니다WCF - 클라이언트가 끝점과 동일한 동작을 가져야합니까?

var svc = new AQSIDMServiceClient(Constants.External_Service_ConfigurationName, serviceAddress); 
:

<client> 
    <endpoint address="http://localhost:3227/Services/ContainerManagementService.svc" 
    binding="basicHttpBinding" 
    contract="MyNamespace2.IAQSIDMService" name="externalService" /> 
</client> 

내가 다른 주소를 제공하는 동적 웹 서비스 호출을하고있는 중이 야 : 여기

 <service behaviorConfiguration="MyNamespace.ContainerManagementServiceBehavior" 
    name="MyNamespace.ContainerManagementService"> 
    <endpoint address="" binding="basicHttpBinding" 
     name="ContainerManagementbasicHttpEndpoint" contract="MyNamespace.IContainer"/>     
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service>  
    <behaviors>  
    <behavior name="MyNamespace.ContainerManagementServiceBehavior"> 
     <serviceMetadata httpGetEnabled="true" /> 
     <serviceDebug includeExceptionDetailInFaults="false" /> 
    </behavior> 
</behaviors> 

내 클라이언트 구성입니다

끝점을 호출하면 다음 오류 메시지가 나타납니다.

{ "EndpointDispatcher에서 ContractFilter가 일치하지 않기 때문에받는 사람에게 'http : // IMyService/CreateContainer'동작이있는 메시지를 처리 ​​할 수 ​​없습니다. 계약 불일치 (보낸 사람과받는 사람 간의 동작이 일치하지 않음) 또는 보낸 사람과받는 사람 사이의 바인딩/보안 불일치가 원인 일 수 있습니다. 그 보낸 사람을 확인하고 수신자가 동일한 계약 및 동일한 바인딩이 (를 포함하여 보안 요구 사항, 예를 들어, 메시지, 전송, 없음). "}

이 때문에 내 클라이언트가 동일한 인 ServiceBehavior이없는 사실이 될 수 엔드 포인트로? 내가 누락 될 수있는 다른 뭔가가 있나요?

감사합니다!

답변

0

예외 정확히 어떤 문제가 당신을 알려줍니다. 당신은 바인딩과 보안을? 요청의 양쪽에 같은 계약을 사용하고 있습니까 동일합니까?

이러한 쿼리에 먼저 응답하면 요청이 실패했는지 확인할 수 있습니다. 또한 서비스에서 추적을 사용 가능하게하고 어떤 오류/경고 레벨 추적이 표시되는지 확인해야합니다. 또한 문제를 진단하는 데 도움이됩니다.

관련 문제