2010-07-23 54 views
7

如何使用c#訂閱msmq中的隊列。 假設我有一個客戶端作爲勝利的形式,並希望訂閱一個消息隊列,每次消息到達隊列我希望通知它的形式。任何例子。 謝謝訂閱msmq

回答

3

您需要查看命名空間System.Messaging中的類型。

有完全的異步支持,所以你可以等待消息到達而不會停止你的用戶界面(但你需要使用Control.BeginInvoke作爲WinForms中的異步操作的普通回調)。

MSDN有很多例子,例如的asynchronous message receive

0

至於建議的@marc_s你可以使用WCF服務,可以使用NetMSMQ或MSMQIntegrated結合訂閱MSMQ中的消息。

如果您不想在Winforms應用程序和MSMQ之間引入WCF服務,則需要構建輪詢機制以檢查MSMQ是否有新消息到達。

1

爲什麼不看看NServiceBus

這是一個非常穩定和成熟的平臺,建立在MSMQ上,並且具有開箱即用的pub/sub功能。死容易開始,並且不需要讓你的手弄髒WCF!