使用內嵌 XSLT 與 XSLT 呼叫範本的指令碼處理
您可以直接撰寫可延伸樣式表單語言轉換 (XSLT) 樣式表單,以用於 腳本 運算質。 如此可讓您執行轉換,而連結與內建的運算質可能不會顯示。 XSLT 指令碼分為兩種:內嵌 XSLT 與 XSLT 呼叫範本。 當您在 [設定腳本運算質] 對話方塊的 [選取腳本類型] 下拉式清單中選取任一個時,您可能會使用範例程式碼。
內嵌 XSLT 指令碼與 XSLT 呼叫範本可能呼叫外部組件中的函式。 進行這類呼叫需要設定方格的 自訂延伸模組 XML 屬性。 如需詳細資訊,請參閱UI 指引和開發人員 API 命名空間參考中的自訂延伸模組 XML (Grid 屬性) 。
內嵌 XSLT
內嵌 XSLT 指令碼可能只產生輸出。 腳本運算質可能沒有任何輸入連結。 運算質還必須直接連結到目的結構描述中的記錄或欄位。
此外,指令碼還負責建立目標節點及其之下的任何結構。
下列輸入執行個體訊息包含代表連絡資訊的兩個項目。
<ns0:SourceInstance xmlns:ns0="http://SourceInstanceNamespace">
<Address>
<Contact>Karin Zimprich</Contact>
<ContactType>Referral</ContactType>
</Address>
</ns0:SourceInstance>
在腳本緩衝區中輸入的下列內嵌 XSLT 腳本會將 Contact 和 ContactType 欄位轉換成屬性。
<ContactInfo xmlns:p="http://SourceInstanceNamespace">
<xsl:variable name="var:var1" select="/p:SourceInstance/Address/ContactType" />
<xsl:attribute name="ContactType">
<xsl:value-of select="$var:var1" />
</xsl:attribute>
<xsl:variable name="var:var2" select="/p:SourceInstance/Address/Contact" />
<xsl:attribute name="Contact">
<xsl:value-of select="$var:var2" />
</xsl:attribute>
</ContactInfo>
在針對先前的輸入執行個體訊息執行時,此指令碼產生下列輸出 (假設為適當的輸出結構描述)。
<ns0:OutInstance xmlns:ns0="http://More_XSLT.Out">
<ContactInfo ContactType="Referral" Contact="Karin Zimprich" xmlns:p="http://SourceInstanceNamespace">
</ContactInfo>
</ns0:OutInstance>
請注意,缺少 腳本 運算質的連結並不會防止 XSLT 腳本從輸入實例訊息取得資料。 此指令碼指定輸入執行個體值的路徑。
如需內嵌 XSLT 腳本的另一個範例,請參閱XML 工具 (BizTalk Server 範例資料夾) 。
內嵌 XSLT 呼叫範本
與內嵌 XSLT 指令碼類似,內嵌 XSLT 呼叫範本必須直接連接到目的節點。 不過,內嵌 XSLT 呼叫範本可能使用來源結構描述與其他運算質的連結。
呼叫範本還負責建立目的節點及其任何子結構。
當您在 [選取腳本類型] 下拉式清單中選取[內嵌 XSLT 呼叫範本] 時,串連兩個專案的範例 XSLT 呼叫範本會出現在[輸入腳本緩衝區] 中。
如需內嵌 XSLT 呼叫範本的另一個範例,請參閱XML Tools (BizTalk Server Samples Folder) 。
另請參閱
指令碼處理運算質
使用外部組件的指令碼處理
使用內嵌 C#、JScript .NET 和 Visual Basic .NET 的指令碼處理
如何新增指令碼處理運算質至對應
如何設定指令碼處理運算質