共用方式為


MQSSendPipelineComponent (BizTalk Server 範例)

本範例示範如何撰寫可從 XML 檔案讀取一組 MQSeries 屬性值,並將這些屬性值套用至訊息的管線元件。

此範例的用途

此範例是由兩個 Visual Studio 專案所組成:管線元件專案,以及使用管線元件的管線專案。

可在何處找到此範例

  • < SamplesPath >\AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent\SetMQSeriesHeaderPropertyComponent

  • < SamplesPath >\AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent\SetMQSeriesHeaderPropertyPipeline

    下表顯示此範例中的檔案,並描述其用途。

檔案 說明
SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent.sln,

SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent.csproj
管線元件的專案和方案檔。
SetMQSeriesHeaderPropertyComponent\CSetMQSeriesHeaderPropertyComponent.cs 管線元件的 Visual C#® 原始程式檔。
SetMQSeriesHeaderPropertyComponent\SetMQSMQMDHdrProps.xml 管線元件讀取及使用的 MQSeries 屬性。
SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.btproj,

SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.sln
BizTalk 管線的專案和方案檔。
SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.snk BizTalk 管線元件的強式命名金鑰檔案。
SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.btp BizTalk Server 管線。

如何使用此範例

若要建立此應用程式,您必須完成下列步驟:

  1. 建立應用程式的資料夾。

  2. 修改和編譯管線元件的 Visual Studio 專案。

  3. 將編譯後的組件和標頭檔複製到適當的資料夾。

  4. 修改BizTalk Server管線的 Visual Studio 專案。

  5. 編譯及部署 BizTalk Server 管線專案。

  6. 設定 BizTalk Server 接收位置。

  7. 建立 MQSeries 佇列。

  8. 設定傳送埠。

  9. 啟用接收位置並啟動傳送埠。

為應用程式建立資料夾

這個程序會為應用程式建立適當的資料夾。

若要為應用程式建立資料夾

  1. 如果 C:\ 磁片磁碟機尚不存在,請在您的 C:\ 磁片磁碟機上建立名為 temp 的資料夾。

  2. C:\temp 目錄下建立名為 Pickup3的資料夾。

修改及編譯管線元件的專案

此程式會修改並編譯管線元件的 Visual Studio 專案。

若要修改及編譯管線元件的專案

  1. 按兩下方案檔 SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent.sln ,以在 Visual Studio 中開啟方案。

  2. 按兩下類別檔案 CSetMQSeriesHeaderPropertyComponent.cs ,在 Visual Studio 中開啟類別檔案。

  3. 找出變數 samplesDir,確認此變數已設定為 C:\temp位置。

  4. 以滑鼠右鍵按一下方案總管中的方案,然後按一下 [置]。 這會將專案編譯成位於 SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent\bin\Debug\ 目錄的 dll。

將組件和標頭檔複製到適當的資料夾

這個程序會將編譯後的組件和標頭檔複製到適當的資料夾。

若要將編譯後的組件和標頭檔複製到適當的資料夾

  1. 將編譯的元件 SetMQSeriesHeaderPropertyComponent.dll 複製到 BizTalk 管線元件資料夾。 BizTalk 管線元件資料夾的預設位置是 \Program Files (x86) \Microsoft BizTalk Server < VERSION > 管線元件。

  2. 將 MQHeader 屬性檔案 SetMQSMQMDHdrProps.xml 複製到 C:\temp 目錄。

修改 BizTalk Server 管線的專案

此程式會修改BizTalk Server管線的 Visual Studio 專案。

若要修改 BizTalk Server 管線的專案

  1. 在 Visual Studio 中,按兩下方案檔 SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.sln來開啟方案。

  2. 為專案建立強式名稱金鑰檔案。 若要這麼做,請執行下列作業:

    1. 開啟 Visual Studio 命令提示字元。

    2. 將目錄變更為 < SamplesPath > \AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent。

    3. 輸入下列命令:

      sn -k MQSSendPipelineComponent.snk

    4. 按 ENTER 鍵。 金鑰檔隨即建立。

  3. 方案總管中,以滑鼠右鍵按一下專案,然後按一下 [屬性] 以啟動中心視窗中專案 (的專案Designer) 。

    1. 在 [專案Designer] 中,按一下 [簽署]索引標籤。

    2. 在右側窗格中,選取 [簽署元件 ] 選項。

    3. 按一下 [ 選擇強式名稱金鑰檔案 ] 選項的下拉式清單,然後按一下 [ 流覽]。

    4. 流覽至 < SamplesPath > \AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent\MQSSendPipelineComponent.snk,按一下 [ 開啟]。

  4. 您稍早建立的管線元件已新增至此管線專案的 預先組合 階段。 如果這個元件尚未加入,您必須完成下列步驟將它加入:

    1. 在 Visual Studio IDE 中,按一下左側的 [ 工具箱 ] 索引標籤。

    2. 以滑鼠右鍵按一下 [ 工具箱],然後按一下 [ 選擇專案]。

    3. 在 [ 選擇工具箱專案] 對話方塊中,按一下 [BizTalk 管線元件 ] 索引標籤,選取 [自訂群組件] 來設定 MQseries 標頭屬性元件,然後按一下 [ 確定]。

    4. [自訂群組件] 拖曳至 [設定 MQseries 標頭屬性]元件到此管線的 [預先組合 ] 階段。

編譯及部署管線專案

這個程序會編譯及部署 BizTalk Server 管線專案。

若要編譯及部署管線專案

  1. 在 [方案總管] 視窗中,以滑鼠右鍵按一下解決方案,然後按一下 [部署解決方案]。 這樣會建置解決方案並將組件部署至 BizTalk 管理資料庫。

  2. 確認組件已部署至 BizTalk 管理資料庫:

    1. 開啟 [BizTalk 管理主控台]。

    2. 按一下以展開 BizTalk 群組 [ < servername > : < management database > ],然後按一下以展開 [元件] 資料夾。

      部署的管線元件應該會顯示在 [元件 ] 資料夾下。

建立接收位置

這個程序會建立 BizTalk Server 接收位置。

若要建立接收位置

  1. 在 [BizTalk Server管理主控台] 中,以滑鼠右鍵按一下 [接收埠],指向 [新增],然後按一下[單向接收埠]。

  2. 在 [ 單向接收埠屬性 ] 對話方塊中,于 [ 名稱 ] 方塊中輸入 「MQReply」,然後按一下 [ 確定]。

  3. 在左窗格中,按一下 [ 接收位置] 索引標籤,然後按一下 [ 新增]。

  4. 在 [ 接收位置屬性] 對話方塊的 [ 名稱 ] 欄位中,輸入 「ReceiveFile」。

  5. 在 [ 傳輸類型] 方塊中,選取 [檔案]。

  6. 在 [ 接收處理常式] 欄位中,選取 [BizTalkServerApplication]。

  7. 在 [ 接收管線 ] 欄位中,選取 [Microsoft.BizTalk.DefaultPipelines.PassThruReceive]。

  8. 在 [ 接收資料夾 ] 欄位中,輸入 「C:\temp\Pickup3」。

  9. 在 [ 檔案遮罩 ] 欄位中,輸入 「*.*」。

  10. 按一下 [確定],然後按一下 [ 確定 ] 以結束 [ 接收位置屬性 ] 對話方塊。

透過 MQSeries Explorer 建立 MQSeries 佇列

如果您有 MQSeries Server for Windows 安裝的必要權限,則可以透過配接器對話方塊建立 MQSeries 佇列並略過下一個程序。

如果您沒有這類存取權限,可以依照下列程序使用 IBM WebSphere MQ Explorer 來建立佇列。

若要透過 MQSeries Explorer 建立 MQSeries 佇列

  1. 按一下 [開始],指向 [ 程式],指向 [IBM WebSphere MQ],然後按一下 [ WebSphere MQ 總管]。

  2. 按兩下 [ 佇列管理員],然後按兩下預設佇列管理員。 預設佇列管理員通常會命名為QM_<machine_name> 其中machine_name是您電腦的名稱。

  3. 以滑鼠右鍵按一下 [ 佇列],指向 [ 新增],然後按一下 [ 本機佇列]。

  4. [建立本機佇列 ] 對話方塊的 [ 佇列名稱] 中,輸入 SETHEADER,然後按一下 [ 確定]。

建立傳送埠和 MQSeries 佇列

這個程序會建立輸出訊息所使用的傳送埠。 如果您還沒有建立 MQSeries 佇列,在建立傳送埠時,也會建立 MQSeries 佇列。

若要建立傳送埠和 MQSeries 佇列

  1. 以滑鼠右鍵按一下 [傳送埠],指向 [ 新增],然後按一下 [ 靜態單向傳送埠]。

  2. 在 [ 傳送埠屬性 ] 對話方塊的 [ 名稱 ] 方塊中,輸入 「MQSolicitResponse」。

  3. 在 [ 傳輸類型] 方塊中,選取 [MQSeries]。

  4. 在 [ 傳送管線 ] 方塊中,選取 [SetMQSeriesHeaderPropertyPipeline.SetMQSeriesHeadersSendPipeline]。

  5. [篩選]中,新增具有下列名稱/值組的新專案:

    • 屬性 設定為 「BTS。ReceivePortName」。

    • 運算子 設定為 「==」。

    • [值 ] 設定為 「ReceiveFile」。

      注意

      這樣會將傳送埠設定為訂閱到達 ReceiveFile 接收埠的訊息。

  6. 按一下 [傳輸]。

  7. 在 [ 位址 (URI) ] 欄位中,按一下省略號 (...) 按鈕。

  8. 在 [ MQSeries 傳輸屬性 ] 對話方塊的 [ 佇列定義 ] 欄位中,按一下省略號 (...) 按鈕。

  9. 在 [ 佇列定義 ] 對話方塊的 [ 伺服器名稱 ] 欄位中,輸入您的電腦名稱稱。

  10. 在 [ 佇列管理員] 欄位中,選取預設佇列管理員。

  11. 在 [佇列] 欄位中,輸入 「SETHEADER」,然後按一下 [ 匯出]。

  12. 在 [ 匯出 ] 對話方塊中,按一下 [ 建立佇列],然後按一下 [ 確定 ] 或 [ 完成 ],直到您結束所有對話方塊為止。

啟用接收位置及啟動傳送埠

這個程序會啟用接收位置及啟動傳送埠。

啟用接收位置和啟動傳送埠

  1. 在 BizTalk Server 管理主控台中,按一下 [接收埠]。

  2. 在詳細資料窗格中,以滑鼠右鍵按一下 MQIn 接收位置,然後按一下 [ 啟用]。

  3. 在詳細資料窗格中,以滑鼠右鍵按一下 SetMQHeader 傳送埠,然後按一下 [ 啟動]。

測試應用程式

這個程序會測試應用程式。

若要測試應用程式

  1. 將檔案放入 C:\Temp\Pickup3 資料夾中。

  2. 啟動 WebSphere MQ Explorer,然後按兩下 [SETHEADER] 佇列,檢查 SETHEADER 佇列中的訊息。

    若要查看 SETHEADER 佇列中訊息的所有內容屬性,請完成下列步驟:

    1. 按兩下 SETHEADER 佇列以顯示 [訊息瀏覽器 ] 對話方塊。

    2. 在 [ 訊息瀏覽器] 對話方塊中,按一下 [ 資料行 ] 以顯示 [ 顯示/隱藏訊息的資料 行] 對話方塊。

    3. [可用的資料行] 下,按兩下每個專案,使其顯示在 [訊息瀏覽器 ] 對話方塊中,然後按一下 [ 確定]。

  3. 每個訊息的訊息內容屬性應該會顯示在 [ 訊息瀏覽器 ] 對話方塊中。

另請參閱

MQSeries 配接器範例