共用方式為


自訂運算質 (BizTalk Server 範例)

「自訂運算質」範例示範如何為 BizTalk 對應工具撰寫自訂運算質。 您可以將運算質加入至 Visual Studio 工具箱。 BizTalk 對應工具在焦點時,[工具箱] 中會顯示運算質。

自訂運算質應該存在於 BizTalk 對應工具組件才能辨識它。 您可以用任何 .NET 相容的語言來撰寫自訂運算質,例如 C# 或 Visual Basic。

此外,自訂運算質必須衍生自 Microsoft.BizTalk.BaseFunctoids 類別,而且必須藉由覆寫它們來提供某些方法的實作。 (類別 BaseFunctoid 定義于隨附于 BizTalk Server.) 的 Microsoft.BizTalk.BaseFunctoids.dll 元件中

此範例的用途

自訂運算質範例會實作數個運算質,每個運算質都是衍生自 BaseFunctoid 類別,並覆寫數個方法。

實作自訂運算質時,您可以公開其內嵌程式碼。 內嵌程式碼會執行運算質的計算。 BizTalk 對應工具編譯器會從運算質擷取內嵌程式碼,再於建置專案時將它內嵌於編譯的 XSLT。

若自訂運算質未公開任何內嵌程式碼,BizTalk 對應工具會產生 XSLT (用來呼叫自訂運算質所在之組件)。 因此,您必須確定自訂運算質組件可在全域組件快取 (GAC) 中使用,這樣 XSLT 引擎才找得到它。 自訂運算質也必須具備唯一的 GUID 屬性。 BizTalk 對應工具會使用 GUID 識別要載入的組件。

重要

若您重複使用「自訂運算質」範例程式碼實作自己的運算質,務必將 GUID 屬性變更為唯一的屬性。

可在何處找到此範例

< 範例路徑 >\XmlTools\CustomFunctoid

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

檔案 Description
AssemblyInfo.cs 組件資訊 C# 原始程式碼。
CBuildArray.bmp 工具箱點陣圖。
CConcat.bmp 工具箱點陣圖。
CExtractArray.bmp 工具箱點陣圖。
Cleanup.bat 用來解除部署組件,將這些組件從全域組件快取 (GAC) 移除,並刪除 CustomFunctoid.dll。
CLongestString.bmp 工具箱點陣圖。
CMultiply.bmp 工具箱點陣圖。
CustomFunctoid.cs 自訂運算質 C# 原始程式碼。
CustomFunctoid.csproj 自訂運算質 C# 專案。
CustomFunctoid.sln 自訂運算質解決方案。
CustomFunctoidResources.resx 自訂運算質資源。
Setup.bat 用來建置、部署及啟動範例。

建置和初始化此範例

請使用下列程序來建置和初始化「自訂運算質」範例。

若要建置並初始化這個範例

  1. 在命令視窗中,將目錄 (cd) 變更為下列資料夾:

    <範例路徑>\XmlTools\CustomFunctoid

  2. 執行檔案 Setup.bat,這會執行下列動作:

    • 建置範例專案。

    • 將產生的組件複製至 Developer Tools\Mapper Extensions 目錄。

    • 將產生的組件加入至 GAC。

      注意

      在嘗試執行此範例之前,您應該確認在建置和初始化程序期間沒有報告錯誤。

執行此範例

使用下列程序執行「自訂運算質」範例。

執行此範例

  1. 從 Visual Studio BizTalk 專案,按一下 [ 工具] 功能表,然後選取 [ 選擇工具箱專案]。

  2. 在 [ 選擇工具箱專案] 對話方塊中,選取 [BizTalk Mapper 運算質] 索引 標籤。

  3. 按一下 [重設],然後按一下 [ 確定]。

    注意

    如果您的自訂運算質未公開任何內嵌程式碼,請確定可以在 GAC 中使用它的組件。

  4. 從 [ 檔案] 功能表中,選取 [ 結束 ] 以關閉 Visual Studio。

  5. 啟動 Visual Studio 命令提示字元

  6. 在命令提示字元中,輸入 devenv /setup

  7. 啟動 Microsoft Visual Studio

    自訂運算質 (自訂串連運算質、最長字串、建置陣列運算質和擷取陣列運算質) 出現在 [工具箱] 的 [ 字串運算質 ] 索引標籤上,而 [累計乘乘運算質] 會顯示在 [ 累計運算質 ] 索引標籤上。

移除此範例

使用下列程序移除「自訂運算質」範例。

若要移除此範例

  1. 從 Visual Studio 工具箱移除運算質。

    警告

    在執行 Cleanup.bat 之後,如果您仍然在工具箱中看到過時的自訂運算質 (可能是因為 Visual Studio 在內部進行快取),請遵循下列程序:

    1. 從 Visual Studio BizTalk 專案,按一下 [ 工具] 功能表,然後選取 [ 選擇工具箱專案]。

    2. 在 [ 選擇工具箱專案] 對話方塊中,選取 [BizTalk Mapper 運算質] 索引 標籤。

    3. 在清單中尋找自訂運算質 (自訂串連運算質、最長字串、建置陣列運算質、擷取陣列運算質和累計乘數) 。 按一下個別 的核取方塊 來移除運算質,然後按一下 [ 確定]。

      如果上述程序無法解決問題,請遵循下列程序。

    4. 從 Visual Studio BizTalk 專案,在編輯地圖時按一下 [ 工具箱 ] 索引標籤,以顯示 [工具箱選擇區]。

    5. 以滑鼠右鍵按一下工具方塊,然後選取 [ 選擇專案]。

    6. 在 [選擇專案] 對話方塊中,按一下 [ 重設],然後按一下 [ 確定]。

    7. 關閉所有 Visual Studio 執行個體。

      如果上述程序無法解決問題,請遵循下列程序。

    8. 以系統管理員身分啟動 Visual Studio 命令提示字元

    9. 關閉所有執行中的 Visual Studio 執行個體。

    10. 執行下列命令:

      devenv /resetsettings

      devenv /setup

    11. 您可以從工具箱中手動選取不想要的運算質。 然後,以滑鼠右鍵按一下運算質,然後按一下 [ 刪除]。

      如果上述程序無法解決問題,請遵循下列程序。

    12. 從 Visual Studio BizTalk 專案,在編輯對應時按一下 [工具箱] 索引標籤,顯示出工具箱工具板。

    13. 按一下 [累計運算質] 群組。

    14. 以滑鼠右鍵按一下您想要移除的運算質,然後選擇 [ 刪除 ] 或按刪除鍵。

    15. 按一下 [字串運算質] 群組。

    16. 以滑鼠右鍵按一下您想要移除的運算質,然後選擇 [ 刪除 ] 或按刪除鍵。

  2. 在命令視窗中,將目錄 (cd) 變更為下列資料夾:

    <範例路徑>\XmlTools\CustomFunctoid

  3. 執行 Cleanup.bat 檔案,它會執行下列動作:

    • 從 Developer Tools\Mapper Extensions 目錄刪除元件。

    • 從 GAC 移除組件。

在此範例中使用的類別或方法

Microsoft.BizTalk.BaseFunctoids.BaseFunctoid

另請參閱

使用 BaseFunctoid
XML 工具 (BizTalk Server Samples 資料夾)