2014-09-12 3 views
0

WSSB 1.1 대기열을 수신 대기하는 WCF 서비스를 설계하려고합니다. 아래에서 서비스 계약 및 구성을 찾으십시오.대기열에서 WSSB (Windows Server Service Bus) 1.1을 수신하는 WCF 서비스

[ServiceContract] 
public interface IService 
{ 
    [OperationContract(IsOneWay = true, Action = "*")] 
    [ReceiveContextEnabled(ManualControl = true)] 
    void ReceiveDocument(System.ServiceModel.Channels.Message msg); 
} 

public class Service : IService 
{ 
    public void ReceiveDocument(System.ServiceModel.Channels.Message msg) 
    { 
     Trace.WriteLine("Message reached queue"); 
    } 
} 

<services> 
     <service name="MyNameSpace.Service"> 
     <endpoint name="DocumentReceived" address="sb://<mycomputername>/ServiceBusDefaultNamespace/queue" binding="netMessagingBinding" bindingConfiguration="messagingBinding" contract="MyNameSpace.IService" behaviorConfiguration="securityBehavior" /> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 

배포 후 서비스 wsdl을 수동으로 탐색하여 예열되는지 확인합니다. 아직도 WSSB 대기열에 메시지를 게시 할 때 작동하지 않습니다. Dbgview에서 진단 메시지를 인쇄해야합니다. 위의 코드에 문제가 있습니까? 내가 여기서 아무것도 놓치고 있니? 도와주세요.

답변

0

아마도 SB에 연결되어 있지 않습니다. 서버 컴퓨터 대신 Windows 7 컴퓨터에서 테스트 중이라면 STS (토큰 공급자 서비스)에 문제가 발생할 수 있습니다. 따라서 Windows 7에서 테스트하려면 Windows STS uri 대신 Shared access signature를 사용하십시오. 자세한 내용은 WCF 추적을 서비스에 추가하십시오.