使用WCF消耗MSMQ

MSMQ和WCF的新成员。 我希望能够高速处理传入的MSMQ消息。 我想使它成为多线程(和事务)。 这样做的最好方法是什么? 任何示例,代码片段,理论都非常受欢迎。 另外,WCF如何能够知道MSMQ中是否有消息? 或者我必须创建一个Windows服务来轮询MSMQ,然后找到消息,在新线程上启动它并调用WCF服务并将消息传递给它? 什么是最好的方法?

非常感谢


这里的答案是使用WCF并创建服务已知类型的数据合约。 这些已知类型是从队列中读取的对象。

为了使它成为多线程和事务性的,不仅队列需要是事务性的,而且还要修饰服务属性:

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.PerSession, ReleaseServiceInstanceOnTransactionComplete = false)]    

InstanceContextMode默认是perSession。

您还需要在您的配置文件上设置绑定

例如:http://msdn.microsoft.com/en-us/library/ms751493.aspx

链接地址: http://www.djcxy.com/p/55809.html

上一篇: Consuming MSMQ with WCF

下一篇: WCF MSMQ queue listener with periodic check