共用方式為


XslCompiledTransform 類別

定義

使用 XSLT 樣式表轉換 XML 資料。

public ref class XslCompiledTransform sealed
public sealed class XslCompiledTransform
type XslCompiledTransform = class
Public NotInheritable Class XslCompiledTransform
繼承
XslCompiledTransform

範例

下列範例會執行檔案的轉換和輸出。

// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("output.xsl");

// Execute the transform and output the results to a file.
xslt.Transform("books.xml", "books.html");
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("output.xsl")
        
' Execute the transform and output the results to a file.
xslt.Transform("books.xml", "books.html")

此範例使用下列兩個輸入檔:

<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
  <book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
    <title>The Autobiography of Benjamin Franklin</title>
    <author>
      <first-name>Benjamin</first-name>
      <last-name>Franklin</last-name>
    </author>
    <price>8.99</price>
  </book>
  <book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
    <title>The Confidence Man</title>
    <author>
      <first-name>Herman</first-name>
      <last-name>Melville</last-name>
    </author>
    <price>11.99</price>
  </book>
  <book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
    <title>The Gorgias</title>
    <author>
      <name>Plato</name>
    </author>
    <price>9.99</price>
  </book>
</bookstore>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
  <HTML>
    <BODY>
      <TABLE BORDER="2">
        <TR>
          <TD>ISBN</TD>
          <TD>Title</TD>
          <TD>Price</TD>
        </TR>
        <xsl:apply-templates select="book"/>
      </TABLE>
    </BODY>
  </HTML>
</xsl:template>
<xsl:template match="book">
  <TR>
    <TD><xsl:value-of select="@ISBN"/></TD>
    <TD><xsl:value-of select="title"/></TD>
    <TD><xsl:value-of select="price"/></TD>
  </TR>
</xsl:template>
</xsl:stylesheet>

備註

如需此 API 的詳細資訊,請參閱 XslCompiledTransform 的補充 API 備註

建構函式

XslCompiledTransform()

初始化 XslCompiledTransform 類別的新執行個體。

XslCompiledTransform(Boolean)

使用指定的偵錯設定,初始化 XslCompiledTransform 類別的新執行個體。

屬性

OutputSettings

XmlWriterSettings取得物件,其中包含衍生自xsl:output樣式表單項目的輸出資訊。

TemporaryFiles

取得 TempFileCollection,包含成功呼叫 Load 方法後,在磁碟上產生的暫存檔案。

方法

CompileToType(XmlReader, XsltSettings, XmlResolver, Boolean, TypeBuilder, String)

將 XSLT 樣式表編譯為指定的類型。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
Load(IXPathNavigable)

編譯包含在 IXPathNavigable 物件中的樣式表。

Load(IXPathNavigable, XsltSettings, XmlResolver)

編譯包含在 IXPathNavigable 中的 XSLT 樣式表。 會 XmlResolver 解析任何 XSLT importinclude 專案,而 XSLT 設定會決定樣式表單的許可權。

Load(MethodInfo, Byte[], Type[])

從使用 XSLTC.exe 公用程式編譯的樣式表中載入方法。

Load(String)

載入並編譯位於指定之 URI 的樣式表。

Load(String, XsltSettings, XmlResolver)

載入並編譯 URI 所指定的 XSLT 樣式表。 會 XmlResolver 解析任何 XSLT importinclude 專案,而 XSLT 設定會決定樣式表單的許可權。

Load(Type)

載入已編譯的樣式表,此樣式表是使用 XSLT 編譯器 (xsltc.exe)所建立的。

Load(XmlReader)

編譯包含在 XmlReader 中的樣式表。

Load(XmlReader, XsltSettings, XmlResolver)

編譯包含在 XmlReader 中的 XSLT 樣式表。 會 XmlResolver 解析任何 XSLT importinclude 專案,而 XSLT 設定會決定樣式表單的許可權。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)
Transform(IXPathNavigable, XmlWriter)

使用 IXPathNavigable 物件所指定的輸入文件執行轉換,並將結果輸出至 XmlWriter

Transform(IXPathNavigable, XsltArgumentList, Stream)

使用 IXPathNavigable 物件所指定的輸入文件執行轉換,並將結果輸出至資料流。 XsltArgumentList 會提供額外的執行階段引數。

Transform(IXPathNavigable, XsltArgumentList, TextWriter)

使用 IXPathNavigable 物件所指定的輸入文件執行轉換,並將結果輸出至 TextWriterXsltArgumentList 會提供額外的執行階段引數。

Transform(IXPathNavigable, XsltArgumentList, XmlWriter)

使用 IXPathNavigable 物件所指定的輸入文件執行轉換,並將結果輸出至 XmlWriterXsltArgumentList 會提供額外的執行階段引數。

Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver)

使用 IXPathNavigable 物件所指定的輸入文件執行轉換,並將結果輸出至 XmlWriterXsltArgumentList 會提供額外的執行階段引數,且 XmlResolver 會解析 XSLT document() 函式。

Transform(String, String)

使用 URI 所指定的輸入文件執行轉換,並將結果輸出至檔案。

Transform(String, XmlWriter)

使用 URI 所指定的輸入文件執行轉換,並將結果輸出至 XmlWriter

Transform(String, XsltArgumentList, Stream)

使用 URI 所指定的輸入文件執行轉換,並將結果輸出至資料流。 XsltArgumentList 會提供額外的執行階段引數。

Transform(String, XsltArgumentList, TextWriter)

使用 URI 所指定的輸入文件執行轉換,並將結果輸出至 TextWriter

Transform(String, XsltArgumentList, XmlWriter)

使用 URI 所指定的輸入文件執行轉換,並將結果輸出至 XmlWriterXsltArgumentList 會提供額外的執行階段引數。

Transform(XmlReader, XmlWriter)

使用 XmlReader 物件所指定的輸入文件執行轉換,並將結果輸出至 XmlWriter

Transform(XmlReader, XsltArgumentList, Stream)

使用 XmlReader 物件所指定的輸入文件執行轉換,並將結果輸出至資料流。 XsltArgumentList 會提供額外的執行階段引數。

Transform(XmlReader, XsltArgumentList, TextWriter)

使用 XmlReader 物件所指定的輸入文件執行轉換,並將結果輸出至 TextWriterXsltArgumentList 會提供額外的執行階段引數。

Transform(XmlReader, XsltArgumentList, XmlWriter)

使用 XmlReader 物件所指定的輸入文件執行轉換,並將結果輸出至 XmlWriterXsltArgumentList 會提供額外的執行階段引數。

Transform(XmlReader, XsltArgumentList, XmlWriter, XmlResolver)

使用 XmlReader 物件所指定的輸入文件執行轉換,並將結果輸出至 XmlWriterXsltArgumentList提供額外的運行時間自變數,而 XmlResolver 會解析 XSLT document() 函式。

適用於

執行緒安全性

一旦載入物件,物件 XslCompiledTransform 就會是安全線程。 換句話說,在方法成功完成之後 LoadTransform 可以從多個線程同時呼叫 方法。

Load如果在另一個線程中呼叫 方法時Transform,在某個線程中再次呼叫 方法,XslCompiledTransform則對象會繼續使用舊狀態來執行Transform呼叫。 當方法成功完成時 Load ,會使用新的狀態。

Load 多個線程同時呼叫 時,此方法不是安全線程。

另請參閱