2014-04-16 133 views
0

我刚刚编写了我的第一个WCF服务以连接到Azure服务总线并处理传入消息。 web.config看起来像:Azure服务总线WCF服务启动但未收到消息

<services> 
     <service name="Acme.Services.ClientManagementService.ClientManagementService" behaviorConfiguration="MyServiceTypeBehaviors"> 
     <endpoint name="ClientManagementService" address="sb://acme.servicebus.windows.net/ClientManagement.GetAllClients" binding="netMessagingBinding" contract="Acme.Services.ClientManagementService.IClientManagementService" behaviorConfiguration="securityBehavior"/> 
     </service> 
    </services> 

当我在调试器中运行服务时,它启动时没有抱怨。问题是无论发送到ClientManagement.GetAllClients主题的消息有多少,都没有看到任何消息传递到该服务。

任何关于如何修复/调试的指针?

+1

你托管在IIS服务?在这种情况下,您需要自动启动进行配置。 –

+0

我现在已经在应用程序池和应用程序上配置了自动启动,但是我仍然没有看到触及该服务的消息。如果服务连接到服务总线上,我可以吗? –

+0

您在系统或应用程序事件日志中没有看到任何警告/消息?通常当事情失败时,你可以看到细节 –

回答

1

将Topic/Subscriptions与WCF发布/订阅服务模型一起使用时,为了添加服务端点,您必须指定主题URI(namespace/topicname)作为地址,并且订阅URI(namespace/topicname/Subscriptions/subname )作为监听URI。

有一些样本,涵盖这种情况下也是如此可能要交叉检查: 1)http://code.msdn.microsoft.com/windowsazure/WCF-with-Service-Bus-d3987eaf 2)http://code.msdn.microsoft.com/windowsazure/Service-Bus-netMessagingBin-9ae8ad13 3)http://code.msdn.microsoft.com/windowsazure/Brokered-Messaging-WCF-ed259f73