LINQ 訊息查詢相互關聯
LinqMessageQueryCorrelation 範例示範如何使用自訂的 MessageQuery 實作 (而不是系統提供的 XPathMessageQuery) 來執行以內容為基礎的相互關聯。
示範
自訂 MessageQuery、以內容為主的相互關聯。
討論
這個範例示範如何為了相互關聯,從 MessageQuery 基底類別延伸。 LinqMessageQuery
自訂實作可讓使用者提供 XName,以使用 XLinq 在訊息中尋找。 查詢所擷取的資料是用來形成相互關聯索引鍵,以便將訊息分派至適當的工作流程執行個體。
若要安裝、建置及執行範例
這個範例使用 HTTP 端點公開工作流程服務。 若要執行此範例,必須加入正確的 URL ACL (如需詳細資料,請參閱設定 HTTP 和 HTTPS),方法是以管理員身分執行 Visual Studio,或在已提升權限的提示字元執行下列命令,以加入適當的 ACL。 請確定您的網域和使用者名稱已用來取代。
netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%
一旦加入 URL ACL,請使用下列步驟。
建置方案。
以滑鼠右鍵按一下解決方案,並選取 [設定啟始專案],以設定多個啟始專案。 加入 Service 和 Client (依此順序) 做為多個啟始專案。
執行應用程式。 用戶端主控台會顯示傳送訂單及接收採購單識別碼、後續確認訂單的工作流程。 服務視窗會顯示正在處理的要求。