XslCompiledTransform.Transform Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wykonuje transformację XSLT.
Przeciążenia
Transform(XmlReader, XsltArgumentList, TextWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu TextWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(IXPathNavigable, XsltArgumentList, XmlWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do obiektu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(IXPathNavigable, XsltArgumentList, TextWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do obiektu TextWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(IXPathNavigable, XsltArgumentList, Stream) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do strumienia. Element XsltArgumentList udostępnia dodatkowe argumenty środowiska uruchomieniowego. |
Transform(XmlReader, XsltArgumentList, XmlWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(XmlReader, XsltArgumentList, Stream) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do strumienia. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(String, String) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i wyprowadza wyniki do pliku. |
Transform(String, XsltArgumentList, TextWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i zwraca wyniki do elementu TextWriter. |
Transform(String, XsltArgumentList, Stream) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i generuje wyniki do przesyłania strumieniowego. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(IXPathNavigable, XmlWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do obiektu XmlWriter. |
Transform(XmlReader, XmlWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu XmlWriter. |
Transform(String, XmlWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i zwraca wyniki do elementu XmlWriter. |
Transform(XmlReader, XsltArgumentList, XmlWriter, XmlResolver) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania, a element XmlResolver rozpoznaje funkcję XSLT |
Transform(String, XsltArgumentList, XmlWriter) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i zwraca wyniki do elementu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania. |
Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver) |
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do elementu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania i XmlResolver rozpoznaje funkcję XSLT |
Uwagi
Uwaga
Istnieją różnice między XSLT skompilowanym w trybie debugowania i XSLT skompilowanym w trybie wydania. W niektórych sytuacjach arkusze stylów skompilowane w trybie debugowania nie będą zgłaszać błędów podczas Loadprogramu , ale później zakończy się niepowodzeniem podczas Transform. Ten sam arkusz stylów skompilowany w trybie wydania zakończy się niepowodzeniem podczas Loadwykonywania operacji . Przykładem takiego zachowania jest przypisana zmienna, która nie jest typem zestawu węzłów, do wyrażenia, w którym wymagany jest zestaw węzłów.
Transform(XmlReader, XsltArgumentList, TextWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu TextWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::Xml::XmlReader ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::IO::TextWriter ^ results);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList? arguments, System.IO.TextWriter results);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList arguments, System.IO.TextWriter results);
member this.Transform : System.Xml.XmlReader * System.Xml.Xsl.XsltArgumentList * System.IO.TextWriter -> unit
Public Sub Transform (input As XmlReader, arguments As XsltArgumentList, results As TextWriter)
Parametry
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- TextWriter
Element TextWriter , do którego chcesz uzyskać dane wyjściowe.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Uwagi
Jeśli arkusz stylów zawiera funkcję XSLT document()
, zostanie rozwiązany przy użyciu bez XmlUrlResolver poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Zobacz też
Dotyczy
Transform(IXPathNavigable, XsltArgumentList, XmlWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do obiektu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::Xml::XPath::IXPathNavigable ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::Xml::XmlWriter ^ results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList? arguments, System.Xml.XmlWriter results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList arguments, System.Xml.XmlWriter results);
member this.Transform : System.Xml.XPath.IXPathNavigable * System.Xml.Xsl.XsltArgumentList * System.Xml.XmlWriter -> unit
Public Sub Transform (input As IXPathNavigable, arguments As XsltArgumentList, results As XmlWriter)
Parametry
- input
- IXPathNavigable
Obiekt implementowania interfejsu IXPathNavigable . W Microsoft .NET Framework może to być element XmlNode (zazwyczaj XmlDocument) lub XPathDocument zawierający dane, które mają zostać przekształcone.
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Uwagi
Jeśli funkcja XSLT document()
jest włączona, zostanie rozpoznana przy użyciu identyfikatora XmlUrlResolver bez poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Ta metoda nie obsługuje xsl:strip-space
elementu. Jeśli skompilowany arkusz stylów zawierał xsl:strip-space
element, należy użyć Transform przeciążenia, które przyjmuje XmlReader jako argument wejściowy.
Interfejs IXPathNavigable jest implementowany w klasach XmlNode i XPathDocument . Te klasy reprezentują pamięć podręczną danych XML w pamięci.
Klasa XmlNode jest oparta na modelu obiektów dokumentów W3C (DOM) i obejmuje możliwości edycji.
Klasa XPathDocument jest magazynem danych tylko do odczytu na podstawie modelu danych XPath. XPathDocument jest zalecaną klasą przetwarzania XSLT. Zapewnia szybszą wydajność w porównaniu z klasą XmlNode .
Przekształcenia mają zastosowanie do dokumentu jako całości. Innymi słowy, jeśli przekazujesz węzeł inny niż węzeł główny dokumentu, nie zapobiega to uzyskiwaniu dostępu do wszystkich węzłów w załadowanym dokumencie. Aby przekształcić fragment węzła, należy utworzyć obiekt zawierający tylko fragment węzła i przekazać ten obiekt do Transform metody . Aby uzyskać więcej informacji, zobacz Instrukcje: przekształcanie fragmentu węzła.
Zobacz też
Dotyczy
Transform(IXPathNavigable, XsltArgumentList, TextWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do obiektu TextWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::Xml::XPath::IXPathNavigable ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::IO::TextWriter ^ results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList? arguments, System.IO.TextWriter results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList arguments, System.IO.TextWriter results);
member this.Transform : System.Xml.XPath.IXPathNavigable * System.Xml.Xsl.XsltArgumentList * System.IO.TextWriter -> unit
Public Sub Transform (input As IXPathNavigable, arguments As XsltArgumentList, results As TextWriter)
Parametry
- input
- IXPathNavigable
Obiekt implementowania interfejsu IXPathNavigable . W Microsoft .NET Framework może to być element XmlNode (zazwyczaj XmlDocument) lub XPathDocument zawierający dane, które mają zostać przekształcone.
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- TextWriter
Element TextWriter , do którego chcesz uzyskać dane wyjściowe.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Uwagi
Jeśli funkcja XSLT document()
jest włączona, zostanie rozpoznana przy użyciu identyfikatora XmlUrlResolver bez poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Ta metoda nie obsługuje xsl:strip-space
elementu. Jeśli skompilowany arkusz stylów zawierał xsl:strip-space
element, należy użyć Transform przeciążenia, które przyjmuje XmlReader jako argument wejściowy.
Interfejs IXPathNavigable jest implementowany w klasach XmlNode i XPathDocument . Te klasy reprezentują pamięć podręczną danych XML w pamięci.
Klasa XmlNode jest oparta na modelu obiektów dokumentów W3C (DOM) i obejmuje możliwości edycji.
Klasa XPathDocument jest magazynem danych tylko do odczytu na podstawie modelu danych XPath. XPathDocument jest zalecaną klasą przetwarzania XSLT. Zapewnia szybszą wydajność w porównaniu z klasą XmlNode .
Przekształcenia mają zastosowanie do dokumentu jako całości. Innymi słowy, jeśli przekazujesz węzeł inny niż węzeł główny dokumentu, nie zapobiega to uzyskiwaniu dostępu do wszystkich węzłów w załadowanym dokumencie. Aby przekształcić fragment węzła, należy utworzyć obiekt zawierający tylko fragment węzła i przekazać ten obiekt do Transform metody . Aby uzyskać więcej informacji, zobacz Instrukcje: przekształcanie fragmentu węzła.
Zobacz też
Dotyczy
Transform(IXPathNavigable, XsltArgumentList, Stream)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do strumienia. Element XsltArgumentList udostępnia dodatkowe argumenty środowiska uruchomieniowego.
public:
void Transform(System::Xml::XPath::IXPathNavigable ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::IO::Stream ^ results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList? arguments, System.IO.Stream results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList arguments, System.IO.Stream results);
member this.Transform : System.Xml.XPath.IXPathNavigable * System.Xml.Xsl.XsltArgumentList * System.IO.Stream -> unit
Public Sub Transform (input As IXPathNavigable, arguments As XsltArgumentList, results As Stream)
Parametry
- input
- IXPathNavigable
Obiekt implementowania interfejsu IXPathNavigable . W Microsoft .NET Framework może to być element XmlNode (zazwyczaj XmlDocument) lub XPathDocument zawierający dane, które mają zostać przekształcone.
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- Stream
Strumień, do którego chcesz uzyskać dane wyjściowe.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Przykłady
W poniższym przykładzie jest wykonywana transformacja XSLT i dane wyjściowe do elementu FileStream.
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("output.xsl");
// Create the FileStream.
using (FileStream fs = new FileStream(@"c:\data\output.xml", FileMode.Create))
{
// Execute the transformation.
xslt.Transform(new XPathDocument("books.xml"), null, fs);
}
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("output.xsl")
' Create the FileStream.
Using fs As New FileStream("c:\data\output.xml", FileMode.Create)
' Execute the transformation.
xslt.Transform(New XPathDocument("books.xml"), Nothing, fs)
End Using
Uwagi
Jeśli funkcja XSLT document()
jest włączona, zostanie rozpoznana przy użyciu identyfikatora XmlUrlResolver bez poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Ta metoda nie obsługuje xsl:strip-space
elementu. Jeśli skompilowany arkusz stylów zawierał xsl:strip-space
element, należy użyć Transform przeciążenia, które przyjmuje XmlReader jako argument wejściowy.
Interfejs IXPathNavigable jest implementowany w klasach XmlNode i XPathDocument . Te klasy reprezentują pamięć podręczną danych XML w pamięci.
Klasa XmlNode jest oparta na modelu obiektów dokumentów W3C (DOM) i obejmuje możliwości edycji.
Klasa XPathDocument jest magazynem danych tylko do odczytu na podstawie modelu danych XPath. XPathDocument jest zalecaną klasą przetwarzania XSLT. Zapewnia szybszą wydajność w porównaniu z klasą XmlNode .
Przekształcenia mają zastosowanie do dokumentu jako całości. Innymi słowy, jeśli przekazujesz węzeł inny niż węzeł główny dokumentu, nie zapobiega to uzyskiwaniu dostępu do wszystkich węzłów w załadowanym dokumencie. Aby przekształcić fragment węzła, należy utworzyć obiekt zawierający tylko fragment węzła i przekazać ten obiekt do Transform metody . Aby uzyskać więcej informacji, zobacz Instrukcje: przekształcanie fragmentu węzła.
Zobacz też
Dotyczy
Transform(XmlReader, XsltArgumentList, XmlWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::Xml::XmlReader ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::Xml::XmlWriter ^ results);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList? arguments, System.Xml.XmlWriter results);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList arguments, System.Xml.XmlWriter results);
member this.Transform : System.Xml.XmlReader * System.Xml.Xsl.XsltArgumentList * System.Xml.XmlWriter -> unit
Public Sub Transform (input As XmlReader, arguments As XsltArgumentList, results As XmlWriter)
Parametry
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Uwagi
Jeśli arkusz stylów zawiera funkcję XSLT document()
, zostanie rozwiązany przy użyciu bez XmlUrlResolver poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Zobacz też
Dotyczy
Transform(XmlReader, XsltArgumentList, Stream)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do strumienia. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::Xml::XmlReader ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::IO::Stream ^ results);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList? arguments, System.IO.Stream results);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList arguments, System.IO.Stream results);
member this.Transform : System.Xml.XmlReader * System.Xml.Xsl.XsltArgumentList * System.IO.Stream -> unit
Public Sub Transform (input As XmlReader, arguments As XsltArgumentList, results As Stream)
Parametry
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- Stream
Strumień, do którego chcesz uzyskać dane wyjściowe.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Uwagi
Jeśli arkusz stylów zawiera funkcję XSLT document()
, zostanie rozwiązany przy użyciu bez XmlUrlResolver poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Zobacz też
Dotyczy
Transform(String, String)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i wyprowadza wyniki do pliku.
public:
void Transform(System::String ^ inputUri, System::String ^ resultsFile);
public void Transform (string inputUri, string resultsFile);
member this.Transform : string * string -> unit
Public Sub Transform (inputUri As String, resultsFile As String)
Parametry
- inputUri
- String
Identyfikator URI dokumentu wejściowego.
- resultsFile
- String
Identyfikator URI pliku wyjściowego.
Wyjątki
Wartość inputUri
lub resultsFile
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Nie można odnaleźć dokumentu wejściowego.
resultsFile
Nie inputUri
można odnaleźć nazwy pliku lub katalogu lub wartości lub.
inputUri
Nie można rozpoznać wartości lubresultsFile
.
-lub-
Wystąpił błąd podczas przetwarzania żądania.
inputUri
lub resultsFile
nie jest prawidłowym identyfikatorem URI.
Wystąpił błąd podczas analizowania podczas ładowania dokumentu wejściowego.
Przykłady
Poniższy przykład wykonuje przekształcenie i dane wyjściowe do pliku.
// 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")
W przykładzie użyto następujących dwóch plików wejściowych:
books.xml
<?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>
output.xsl
<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>
Uwagi
Ta metoda używa wartości domyślnej XmlUrlResolver bez poświadczeń użytkownika do rozpoznawania dokumentów wejściowych i wyjściowych. Jeśli którykolwiek z tych zasobów znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Element XmlReader z ustawieniami domyślnymi służy do ładowania dokumentu wejściowego. Przetwarzanie DTD jest wyłączone w elemecie XmlReader. Jeśli potrzebujesz przetwarzania DTD, utwórz obiekt XmlReader z włączoną tą funkcją i przekaż ją do Transform metody .
Zobacz też
Dotyczy
Transform(String, XsltArgumentList, TextWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i zwraca wyniki do elementu TextWriter.
public:
void Transform(System::String ^ inputUri, System::Xml::Xsl::XsltArgumentList ^ arguments, System::IO::TextWriter ^ results);
public void Transform (string inputUri, System.Xml.Xsl.XsltArgumentList? arguments, System.IO.TextWriter results);
public void Transform (string inputUri, System.Xml.Xsl.XsltArgumentList arguments, System.IO.TextWriter results);
member this.Transform : string * System.Xml.Xsl.XsltArgumentList * System.IO.TextWriter -> unit
Public Sub Transform (inputUri As String, arguments As XsltArgumentList, results As TextWriter)
Parametry
- inputUri
- String
Identyfikator URI dokumentu wejściowego.
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- TextWriter
Element TextWriter , do którego chcesz uzyskać dane wyjściowe.
Wyjątki
Wartość inputUri
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Nie inputUri
można odnaleźć nazwy pliku lub katalogu.
inputUri
Nie można rozpoznać wartości.
-lub-
Wystąpił błąd podczas przetwarzania żądania.
inputUri
nie jest prawidłowym identyfikatorem URI.
Wystąpił błąd podczas analizowania podczas ładowania dokumentu wejściowego.
Przykłady
Poniższy przykład wykonuje transformację XSLT i generuje ciąg.
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("HTML_out.xsl");
// Transform the file and output an HTML string.
string HTMLoutput;
StringWriter writer = new StringWriter();
xslt.Transform("books.xml", null, writer);
HTMLoutput = writer.ToString();
writer.Close();
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("HTML_out.xsl")
' Transform the file and output an HTML string.
Dim HTMLoutput As String
Dim writer As New StringWriter()
xslt.Transform("books.xml", Nothing, writer)
HTMLoutput = writer.ToString()
writer.Close()
Uwagi
Ta metoda używa wartości domyślnej XmlUrlResolver bez poświadczeń użytkownika, aby rozpoznać dokument wejściowy i wszystkie wystąpienia funkcji XSLT document()
znalezione w arkuszu stylów. Jeśli którykolwiek z tych zasobów znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Element XmlReader z ustawieniami domyślnymi służy do ładowania dokumentu wejściowego. Przetwarzanie DTD jest wyłączone w elemecie XmlReader. Jeśli potrzebujesz przetwarzania DTD, utwórz obiekt XmlReader z włączoną tą funkcją i przekaż ją do Transform metody .
Zobacz też
Dotyczy
Transform(String, XsltArgumentList, Stream)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i generuje wyniki do przesyłania strumieniowego. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::String ^ inputUri, System::Xml::Xsl::XsltArgumentList ^ arguments, System::IO::Stream ^ results);
public void Transform (string inputUri, System.Xml.Xsl.XsltArgumentList? arguments, System.IO.Stream results);
public void Transform (string inputUri, System.Xml.Xsl.XsltArgumentList arguments, System.IO.Stream results);
member this.Transform : string * System.Xml.Xsl.XsltArgumentList * System.IO.Stream -> unit
Public Sub Transform (inputUri As String, arguments As XsltArgumentList, results As Stream)
Parametry
- inputUri
- String
Identyfikator URI dokumentu wejściowego.
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- Stream
Strumień, do którego chcesz uzyskać dane wyjściowe.
Wyjątki
Wartość inputUri
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Nie inputUri
można odnaleźć nazwy pliku lub katalogu.
inputUri
Nie można rozpoznać wartości.
-lub-
Wystąpił błąd podczas przetwarzania żądania.
inputUri
nie jest prawidłowym identyfikatorem URI.
Wystąpił błąd podczas analizowania podczas ładowania dokumentu wejściowego.
Uwagi
Ta metoda używa wartości domyślnej XmlUrlResolver bez poświadczeń użytkownika, aby rozpoznać dokument wejściowy i wszystkie wystąpienia funkcji XSLT document()
znalezione w arkuszu stylów. Jeśli którykolwiek z tych zasobów znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Element XmlReader z ustawieniami domyślnymi służy do ładowania dokumentu wejściowego. Przetwarzanie DTD jest wyłączone w elemecie XmlReader. Jeśli potrzebujesz przetwarzania DTD, utwórz obiekt XmlReader z włączoną tą funkcją i przekaż ją do Transform metody .
Zobacz też
Dotyczy
Transform(IXPathNavigable, XmlWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do obiektu XmlWriter.
public:
void Transform(System::Xml::XPath::IXPathNavigable ^ input, System::Xml::XmlWriter ^ results);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.XmlWriter results);
member this.Transform : System.Xml.XPath.IXPathNavigable * System.Xml.XmlWriter -> unit
Public Sub Transform (input As IXPathNavigable, results As XmlWriter)
Parametry
- input
- IXPathNavigable
Obiekt implementowania interfejsu IXPathNavigable . W Microsoft .NET Framework może to być element XmlNode (zazwyczaj XmlDocument) lub XPathDocument zawierający dane, które mają zostać przekształcone.
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Przykłady
W poniższym przykładzie jest wykonywana transformacja XSLT i dane wyjściowe do XmlWriter obiektu.
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("output.xsl");
// Create the writer.
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = "\t";
XmlWriter writer = XmlWriter.Create("output.xml", settings);
// Execute the transformation.
xslt.Transform(new XPathDocument("books.xml"), writer);
writer.Close();
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("output.xsl")
' Create the writer.
Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = vbTab
Dim writer As XmlWriter = XmlWriter.Create("output.xml", settings)
' Execute the transformation.
xslt.Transform(New XPathDocument("books.xml"), writer)
writer.Close()
Uwagi
Jeśli funkcja XSLT document()
jest włączona, zostanie rozpoznana przy użyciu identyfikatora XmlUrlResolver bez poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Ta metoda nie obsługuje xsl:strip-space
elementu. Jeśli skompilowany arkusz stylów zawierał xsl:strip-space
element, należy użyć Transform przeciążenia, które przyjmuje XmlReader jako argument wejściowy.
Interfejs IXPathNavigable jest implementowany w klasach XmlNode i XPathDocument . Te klasy reprezentują pamięć podręczną danych XML w pamięci.
Klasa XmlNode jest oparta na modelu obiektów dokumentów W3C (DOM) i obejmuje możliwości edycji.
Klasa XPathDocument jest magazynem danych tylko do odczytu na podstawie modelu danych XPath. XPathDocument jest zalecaną klasą przetwarzania XSLT. Zapewnia szybszą wydajność w porównaniu z klasą XmlNode .
Przekształcenia mają zastosowanie do dokumentu jako całości. Innymi słowy, jeśli przekazujesz węzeł inny niż węzeł główny dokumentu, nie zapobiega to uzyskiwaniu dostępu do wszystkich węzłów w załadowanym dokumencie. Aby przekształcić fragment węzła, należy utworzyć obiekt zawierający tylko fragment węzła i przekazać ten obiekt do Transform metody . Aby uzyskać więcej informacji, zobacz Instrukcje: przekształcanie fragmentu węzła.
Zobacz też
Dotyczy
Transform(XmlReader, XmlWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
public:
void Transform(System::Xml::XmlReader ^ input, System::Xml::XmlWriter ^ results);
public void Transform (System.Xml.XmlReader input, System.Xml.XmlWriter results);
member this.Transform : System.Xml.XmlReader * System.Xml.XmlWriter -> unit
Public Sub Transform (input As XmlReader, results As XmlWriter)
Parametry
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Przykłady
Poniższy przykład przekształca pierwszą książkę w pliku books.xml.
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("output.xsl");
// Create the writer.
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = "\t";
XmlWriter writer = XmlWriter.Create("output.xml", settings);
XmlReader reader = XmlReader.Create("books.xml");
reader.MoveToContent();
// Execute the transformation.
xslt.Transform(reader, writer);
writer.Close();
reader.Close();
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("output.xsl")
' Create the writer.
Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = vbTab
Dim writer As XmlWriter = XmlWriter.Create("output.xml", settings)
Dim reader As XmlReader = XmlReader.Create("books.xml")
reader.MoveToContent()
' Execute the transformation.
xslt.Transform(reader, writer)
writer.Close()
reader.Close()
Uwagi
Jeśli funkcja XSLT document()
jest włączona, zostanie rozpoznana przy użyciu identyfikatora XmlUrlResolver bez poświadczeń użytkownika. Jeśli zasób zewnętrzny znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Zobacz też
Dotyczy
Transform(String, XmlWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i zwraca wyniki do elementu XmlWriter.
public:
void Transform(System::String ^ inputUri, System::Xml::XmlWriter ^ results);
public void Transform (string inputUri, System.Xml.XmlWriter results);
member this.Transform : string * System.Xml.XmlWriter -> unit
Public Sub Transform (inputUri As String, results As XmlWriter)
Parametry
- inputUri
- String
Identyfikator URI dokumentu wejściowego.
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
Wyjątki
Wartość inputUri
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Nie inputUri
można odnaleźć nazwy pliku lub katalogu.
inputUri
Nie można rozpoznać wartości.
-lub-
Wystąpił błąd podczas przetwarzania żądania.
inputUri
nie jest prawidłowym identyfikatorem URI.
Wystąpił błąd podczas analizowania podczas ładowania dokumentu wejściowego.
Przykłady
W poniższym przykładzie jest wykonywana transformacja XSLT i dane wyjściowe do XmlWriter obiektu.
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("output.xsl");
// Create the writer.
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = "\t";
XmlWriter writer = XmlWriter.Create("output.xml", settings);
// Execute the transformation.
xslt.Transform("books.xml", writer);
writer.Close();
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("output.xsl")
' Create the writer.
Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = vbTab
Dim writer As XmlWriter = XmlWriter.Create("output.xml", settings)
' Execute the transformation.
xslt.Transform("books.xml", writer)
writer.Close()
Uwagi
Ta metoda używa wartości domyślnej XmlUrlResolver bez poświadczeń użytkownika, aby rozpoznać dokument wejściowy i wszystkie wystąpienia funkcji XSLT document()
znalezione w arkuszu stylów. Jeśli którykolwiek z tych zasobów znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Element XmlReader z ustawieniami domyślnymi służy do ładowania dokumentu wejściowego. Przetwarzanie DTD jest wyłączone w elemecie XmlReader. Jeśli potrzebujesz przetwarzania DTD, utwórz obiekt XmlReader z włączoną tą funkcją i przekaż ją do Transform metody .
Ta metoda nie obsługuje xsl:strip-space
elementu. Jeśli skompilowany arkusz stylów zawierał xsl:strip-space
element, należy użyć Transform przeciążenia, które przyjmuje XmlReader jako argument wejściowy.
Zobacz też
Dotyczy
Transform(XmlReader, XsltArgumentList, XmlWriter, XmlResolver)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego XmlReader przez obiekt i zwraca wyniki do obiektu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania, a element XmlResolver rozpoznaje funkcję XSLT document()
.
public:
void Transform(System::Xml::XmlReader ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::Xml::XmlWriter ^ results, System::Xml::XmlResolver ^ documentResolver);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList? arguments, System.Xml.XmlWriter results, System.Xml.XmlResolver? documentResolver);
public void Transform (System.Xml.XmlReader input, System.Xml.Xsl.XsltArgumentList arguments, System.Xml.XmlWriter results, System.Xml.XmlResolver documentResolver);
member this.Transform : System.Xml.XmlReader * System.Xml.Xsl.XsltArgumentList * System.Xml.XmlWriter * System.Xml.XmlResolver -> unit
Public Sub Transform (input As XmlReader, arguments As XsltArgumentList, results As XmlWriter, documentResolver As XmlResolver)
Parametry
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
- documentResolver
- XmlResolver
Służy XmlResolver do rozpoznawania funkcji XSLT document()
. Jeśli jest null
to , document()
funkcja nie jest rozpoznawana.
Wyjątki
Wartość input
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Przykłady
W poniższym przykładzie użyto elementu an XmlSecureResolver do rozpoznania funkcji XSLT document()
.
// Create a resolver and specify the necessary credentials.
XmlSecureResolver resolver = new XmlSecureResolver(new XmlUrlResolver(), "http://serverName/data/");
System.Net.NetworkCredential myCred;
myCred = new System.Net.NetworkCredential(UserName,SecurelyStoredPassword,Domain);
resolver.Credentials = myCred;
XsltSettings settings = new XsltSettings();
settings.EnableDocumentFunction = true;
// Load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("http://serverName/data/xsl/sort.xsl", settings, resolver);
// Transform the file.
using (XmlReader reader = XmlReader.Create("books.xml"))
{
using (XmlWriter writer = XmlWriter.Create("output.xml"))
{
xslt.Transform(reader, null, writer, resolver);
}
}
' Create a resolver and specify the necessary credentials.
Dim resolver As New XmlSecureResolver(New XmlUrlResolver(), "http://serverName/data/")
Dim myCred As System.Net.NetworkCredential
myCred = New System.Net.NetworkCredential(UserName, SecurelyStoredPassword, Domain)
resolver.Credentials = myCred
Dim settings As New XsltSettings()
settings.EnableDocumentFunction = True
' Load the style sheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("http://serverName/data/xsl/sort.xsl", settings, resolver)
' Transform the file.
Using reader As XmlReader = XmlReader.Create("books.xml")
Using writer As XmlWriter = XmlWriter.Create("output.xml")
xslt.Transform(reader, Nothing, writer, resolver)
End Using
End Using
Zobacz też
Dotyczy
Transform(String, XsltArgumentList, XmlWriter)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego przez identyfikator URI i zwraca wyniki do elementu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania.
public:
void Transform(System::String ^ inputUri, System::Xml::Xsl::XsltArgumentList ^ arguments, System::Xml::XmlWriter ^ results);
public void Transform (string inputUri, System.Xml.Xsl.XsltArgumentList? arguments, System.Xml.XmlWriter results);
public void Transform (string inputUri, System.Xml.Xsl.XsltArgumentList arguments, System.Xml.XmlWriter results);
member this.Transform : string * System.Xml.Xsl.XsltArgumentList * System.Xml.XmlWriter -> unit
Public Sub Transform (inputUri As String, arguments As XsltArgumentList, results As XmlWriter)
Parametry
- inputUri
- String
Identyfikator URI dokumentu wejściowego.
- arguments
- XsltArgumentList
Argumenty XsltArgumentList kwalifikowane przestrzeni nazw używane jako dane wejściowe do przekształcenia. Ta wartość może być następująca null
: .
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
Wyjątki
Wartość inputUri
lub results
to null
.
Wystąpił błąd podczas wykonywania przekształcenia XSLT.
Nie inputtUri
można odnaleźć nazwy pliku lub katalogu.
inputUri
Nie można rozpoznać wartości.
-lub-
Wystąpił błąd podczas przetwarzania żądania.
inputUri
nie jest prawidłowym identyfikatorem URI.
Wystąpił błąd podczas analizowania podczas ładowania dokumentu wejściowego.
Przykłady
W poniższym przykładzie użyto XsltArgumentList obiektu do utworzenia parametru reprezentującego bieżącą datę i godzinę.
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
public class Sample
{
public static void Main()
{
// Create the XslCompiledTransform and load the stylesheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("order.xsl");
// Create the XsltArgumentList.
XsltArgumentList xslArg = new XsltArgumentList();
// Create a parameter which represents the current date and time.
DateTime d = DateTime.Now;
xslArg.AddParam("date", "", d.ToString());
// Transform the file.
using (XmlWriter w = XmlWriter.Create("output.xml"))
{
xslt.Transform("order.xml", xslArg, w);
}
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Public Class Sample
Public Shared Sub Main()
' Create the XslCompiledTransform and load the stylesheet.
Dim xslt As New XslCompiledTransform()
xslt.Load("order.xsl")
' Create the XsltArgumentList.
Dim xslArg As New XsltArgumentList()
' Create a parameter which represents the current date and time.
Dim d As DateTime = DateTime.Now
xslArg.AddParam("date", "", d.ToString())
Using w As XmlWriter = XmlWriter.Create("output.xml")
' Transform the file.
xslt.Transform("order.xml", xslArg, w)
End Using
End Sub
End Class
W przykładzie użyto następujących dwóch plików danych jako danych wejściowych.
order.xml
<!--Represents a customer order-->
<order>
<book ISBN='10-861003-324'>
<title>The Handmaid's Tale</title>
<price>19.95</price>
</book>
<cd ISBN='2-3631-4'>
<title>Americana</title>
<price>16.95</price>
</cd>
</order>
order.xsl
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="date"/>
<xsl:template match="/">
<order>
<date><xsl:value-of select="$date"/></date>
<total><xsl:value-of select="sum(//price)"/></total>
</order>
</xsl:template>
</xsl:stylesheet>
Uwagi
Ta metoda używa wartości domyślnej XmlUrlResolver bez poświadczeń użytkownika, aby rozpoznać dokument wejściowy i wszystkie wystąpienia funkcji XSLT document()
znalezione w arkuszu stylów. Jeśli którykolwiek z tych zasobów znajduje się w zasobie sieciowym, który wymaga uwierzytelniania, użyj przeciążenia, które przyjmuje XmlResolver jako jeden z jego argumentów i określ element XmlResolver z wymaganymi poświadczeniami.
Element XmlReader z ustawieniami domyślnymi służy do ładowania dokumentu wejściowego. Przetwarzanie DTD jest wyłączone w elemecie XmlReader. Jeśli potrzebujesz przetwarzania DTD, utwórz obiekt XmlReader z włączoną tą funkcją i przekaż ją do Transform metody .
Zobacz też
Dotyczy
Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver)
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
- Źródło:
- XslCompiledTransform.cs
Wykonuje przekształcenie przy użyciu dokumentu wejściowego określonego IXPathNavigable przez obiekt i zwraca wyniki do elementu XmlWriter. Element XsltArgumentList udostępnia dodatkowe argumenty czasu wykonywania i XmlResolver rozpoznaje funkcję XSLT document()
.
public:
void Transform(System::Xml::XPath::IXPathNavigable ^ input, System::Xml::Xsl::XsltArgumentList ^ arguments, System::Xml::XmlWriter ^ results, System::Xml::XmlResolver ^ documentResolver);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList? arguments, System.Xml.XmlWriter results, System.Xml.XmlResolver? documentResolver);
public void Transform (System.Xml.XPath.IXPathNavigable input, System.Xml.Xsl.XsltArgumentList arguments, System.Xml.XmlWriter results, System.Xml.XmlResolver documentResolver);
member this.Transform : System.Xml.XPath.IXPathNavigable * System.Xml.Xsl.XsltArgumentList * System.Xml.XmlWriter * System.Xml.XmlResolver -> unit
Public Sub Transform (input As IXPathNavigable, arguments As XsltArgumentList, results As XmlWriter, documentResolver As XmlResolver)
Parametry
- input
- IXPathNavigable
Dokument do przekształcenia określony przez IXPathNavigable obiekt.
- arguments
- XsltArgumentList
Lista argumentów jako XsltArgumentList.
- results
- XmlWriter
Element XmlWriter , do którego chcesz uzyskać dane wyjściowe.
Jeśli arkusz stylów zawiera xsl:output
element, należy utworzyć XmlWriter obiekt przy użyciu XmlWriterSettings obiektu zwróconego OutputSettings z właściwości . Gwarantuje to, że ustawienia XmlWriter danych wyjściowych są poprawne.
- documentResolver
- XmlResolver
Służy XmlResolver do rozpoznawania funkcji XSLT document()
. Jeśli jest null
to , document()
funkcja nie jest rozpoznawana.