標準設置我認爲。我主要關注:http://blogs.msdn.com/b/tomholl/archive/2008/07/12/msmq-wcf-and-iis-getting-them-to-play-nice-part-1.aspx,但根據需要使用其他來源。MSMQ + WCF,IIS7 - 郵件正在記錄,但從未打過服務
到目前爲止,這裏是發生了什麼:
- 客戶在日記郵件發送消息
- 我看到消息的合適的隊列中
- 服務似乎永遠不會被調用。我有很多日誌記錄會輸出服務調用日誌和/或服務方法中的錯誤。
我已關閉服務,郵件仍然在日誌消息中結束 - 不知道爲什麼。
隊列:bretrace/bretraceservice.svc(匿名訪問,已授予完全權限)
客戶的Web.config
<netMsmqBinding>
<binding name="MsmqBreTrace" receiveErrorHandling="Move">
<security mode="None" />
</binding>
</netMsmqBinding>
<endpoint address="net.msmq://wcfserver/private/bretrace/bretraceservice.svc" binding="netMsmqBinding"
bindingConfiguration="MsmqBreTrace" name="MsmqBreTraceService"
contract="C.BusinessRuleController.Services.BoschProxy.Trace.IQueuingTraceContract"/>
服務的Web.config
<bindings>
<netMsmqBinding>
<binding name="MsmqBreTraceReader" receiveErrorHandling="Move">
<security mode="None" />
</binding>
</netMsmqBinding>
</bindings>
<services>
<service name="C.BusinessRuleController.Services.QR.BreTraceService">
<endpoint address=""
binding="netMsmqBinding" bindingConfiguration="MsmqBreTraceReader"
contract="C.BusinessRuleController.Services.BoschProxy.Trace.IQueuingTraceContract" />
</service>
</services>
我也啓動system.diagnostics,它似乎是調用服務,在我看到的活動下:
- 「流程操作:'http://tempuri.org/IQueuingTraceContract/LogTrace'。」 我不確定tempuri.org是否有問題?
「執行C.BusinessRuleController ...」作爲另一項活動。
您是否啓用了端到端跟蹤? http://technet.microsoft.com/en-us/library/cc730882.aspx –
我已經啓用它 - 但我真的無法制作它的正面或反面。我有3個事件 - 消息通過網絡(事件ID 4)消息放入隊列(事件ID 1)和消息接收(事件ID 2)。我看不到這顯示哪些服務正在接收消息 – Prescott
如果每條消息有三個事件,這通常表示一切正常。你有沒有想過使用事務隊列? –