Share via


HOW TO:與 WCF 端點交換佇列訊息

佇列可確保用戶端與 Windows Communication Foundation (WCF) 服務之間發生可靠的傳訊,即使服務在通訊時無法使用也一樣。下列程序顯示如何在實作 WCF 服務時,使用標準佇列繫結確保在用戶端與服務間建立永久性通訊。

此章節解釋如何在 WCF 用戶端與 WCF 服務之間使用 NetMsmqBinding 處理佇列通訊。

若要在 WCF 服務中使用佇列

  1. 使用以 ServiceContractAttribute 標記的介面定義服務合約。

  2. 在屬於服務合約部分的介面中標示作業為 OperationContractAttribute 並指定它們為單向,因為此方法不用傳回任何回應。下列程式碼提供範例服務合約以及其作業定義。

  3. 當服務合約通過使用者定義型別,您將需要為這些型別定義資料合約。下列程式碼顯示資料合約的範例 (請注意,定義此資料合約的類別也定義許多方法。這些方法不被視為資料合約的部分。只有以 DataMember 屬性宣告的成員才屬於資料合約的部分)。

  4. 實作在類別中之介面所定義的服務合約方法。

  5. 使用 System.Messaging 來建立交易式佇列。您可另行選擇使用 Microsoft Message Queuing (MSMQ) Microsoft Management Console (MMC) 建立佇列。若是這樣,請確定您建立交易式佇列。

  6. 在組態中定義指定服務位址的 ServiceEndpoint 並且使用標準的 NetMsmqBinding 繫結。如需有關使用 WCF 組態的 如需 ,請參閱 設定 Windows Communication Foundation 應用程式

  7. 使用從佇列讀取訊息並加以處理的 ServiceHost 建立 OrderProcessing 服務的主機。

  8. 開啟服務主機來提供服務。

  9. 關閉服務主機。

若要建立佇列服務的用戶端

  1. 使用 Svcutil.exe 工具建立 WCF 用戶端。

  2. 在組態中定義指定位址並且使用標準 NetMsmqBinding 繫結的 ServiceEndpoint

  3. 建立交易範圍以寫入交易式佇列。

  4. 呼叫計算機作業。

  5. 關閉 WCF 用戶端。

範例

請參閱

工作

HOW TO:與 WCF 端點和訊息佇列應用程式交換訊息

參考

NetMsmqBinding

概念

WCF 中的佇列

其他資源

Transacted MSMQ Binding