XslTransform XslTransform XslTransform XslTransform Class

Definition

Warnung

Diese API ist jetzt veraltet.

Transformiert XML-Daten unter Verwendung eines XSLT (Extensible Stylesheet Language for Transformations)-Stylesheets.Transforms XML data using an Extensible Stylesheet Language for Transformations (XSLT) style sheet.

public ref class XslTransform sealed
[System.Obsolete("This class has been deprecated. Please use System.Xml.Xsl.XslCompiledTransform instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public sealed class XslTransform
type XslTransform = class
Public NotInheritable Class XslTransform
Vererbung
XslTransformXslTransformXslTransformXslTransform
Attribute

Hinweise

Hinweis

Die XslTransform Klasse ist in Microsoft .NET Framework, Version 2.0, veraltet.The XslTransform class is obsolete in the Microsoft .NET Framework version 2.0. Die XslCompiledTransform Klasse ist der neue XSLT-Prozessor.The XslCompiledTransform class is the new XSLT processor. Weitere Informationen finden Sie unter mithilfe der Klasse "XslCompiledTransform" und Migrieren von der XslTransform-Klasse.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform unterstützt die XSLT 1.0-Syntax.XslTransform supports the XSLT 1.0 syntax. XSLT-Stylesheet muss verwenden den Namespace http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must use the namespace http://www.w3.org/1999/XSL/Transform.

Zusätzliche Argumente können auch hinzugefügt werden, um das Stylesheet mithilfe der XsltArgumentList Klasse.Additional arguments can also be added to the style sheet using the XsltArgumentList class. Diese Klasse enthält die Eingabeparameter für die stilobjekte-Tabelle und die Erweiterung, die aus dem Stylesheet aufgerufen werden kann.This class contains input parameters for the style sheet and extension objects which can be called from the style sheet.

Zum Transformieren von XML-Daten:To transform XML data:

  1. Erstellen Sie eine XslTransform Objekt.Create an XslTransform object.

  2. Verwenden der Load Methode, um das Stylesheet für die Transformation zu laden.Use the Load method to load the style sheet for the transformation. Diese Methode weist mehrere Überladungen auf, und können Laden ein Stylesheet mithilfe einer XmlReader, XPathNavigator, IXPathNavigable, oder eine URL mit dem Speicherort der Datei.This method has several overloads and can load a style sheet using an XmlReader, XPathNavigator, IXPathNavigable, or a URL with the location of the file.

  3. Verwenden der Transform Methode, um die XML-Daten zu transformieren.Use the Transform method to transform the XML data. Diese Methode weist mehrere Überladungen auf, und es kann verschiedene Arten von ein- und Ausgabe verarbeiten.This method has several overloads and can handle different types of input and output. Sie können auch angeben, ein XsltArgumentList , die zusätzliche Argumente, die als Eingabe für die Verwendung während der Transformation enthält.You can also specify an XsltArgumentList containing additional arguments to use as input during the transformation.

SicherheitsüberlegungenSecurity Considerations

Beim Erstellen einer Anwendung, die die XslTransform-Klasse verwendet, sollten Ihnen die folgenden Elemente und deren Auswirkungen bekannt sein:When creating an application that uses the XslTransform class, you should be aware of the following items and their implications:

  • Erweiterungsobjekte sind standardmäßig aktiviert.Extension objects are enabled by default. Wenn der XsltArgumentList-Methode ein Transform-Objekt übergeben wird, das Erweiterungsobjekte enthält, so werden diese verwendet.If an XsltArgumentList object containing extension objects is passed to the Transform method, they are utilized.

  • XSLT-Stylesheets können Verweise auf andere Dateien und eingebettete Skriptblöcke enthalten.XSLT style sheets can include references to other files and embedded script blocks. Ein böswilliger Benutzer kann dies ausnutzen und Sie mit Daten oder Stylesheets, die bei Ausführung führt dazu, dass Ihr System zu verarbeiten, bis die Ressourcen des Computers erschöpft.A malicious user can exploit this by supplying you with data or style sheets that when executed will cause your system to process until the computer runs low on resources.

  • XSLT-Anwendungen, die in einer teilweise vertrauenswürdigen Umgebung ausgeführt werden, können einem Stylesheet-Spoofing ausgesetzt sein.XSLT applications that run in a mixed trust environment can result in style sheet spoofing. Ein böswilliger Benutzer könnte z. B. ein Objekt mit einem schädlichen Stylesheet laden und es an einen anderen Benutzer übermitteln, der die Transform-Methode aufruft und die Transformation ausführt.For example, a malicious user can load an object with a harmful style sheet and hand it off to another user who subsequently calls the Transform method and executes the transformation.

Diese Sicherheitsprobleme können Sie umgehen, indem Sie akzeptiert keine XslTransform -Objekten, XSLT-Stylesheets und XML-Quelldaten aus nicht vertrauenswürdigen Quellen.These security issues can be mitigated by not accepting XslTransform objects, XSLT style sheets, or XML source data from untrusted sources.

Unterstützung der SkripterstellungScripting Support

Diese Klasse unterstützt eingebettete Skripts unter Verwendung der msxsl:script Element.This class supports embedded scripting using the msxsl:script element.

In Version 1.1 von .NET Framework bestimmt der Beweis des Stylesheets, die Berechtigungen, die eingebetteten Skripts erteilt werden.In version 1.1 of the .NET Framework, the evidence of the style sheet determines what permissions are given to embedded scripts.

  • Wenn das Stylesheet aus einem Uniform Resource Identifier (URI) geladen wurde, wird der URI verwendet, um den Beweis zu erstellen.If the style sheet was loaded from a Uniform Resource Identifier (URI), the URI is used to create the evidence. Dieser Beweis umfasst den URI zusammen mit der jeweiligen Site und Zone.This evidence includes the URI along with its site and zone.

  • Bei das das Stylesheet mit einer anderen Quelle geladen wurde, können Sie Beweise angeben, durch Übergeben einer System.Security.Policy.Evidence -Objekt an die Load Methode.If the style sheet was loaded using another source, you can provide evidence by passing a System.Security.Policy.Evidence object to the Load method. Andernfalls hat die Skriptassembly volle Vertrauenswürdigkeit.Otherwise, the script assembly has full trust.

Teilweise vertrauenswürdige Aufrufer: UnmanagedCode Berechtigung ist erforderlich, um das eingebettete Skript zu kompilieren.Semi-trusted callers: UnmanagedCode permission is required to compile the embedded script. ControlEvidence Berechtigung ist erforderlich, um bieten Evidence auf die Load Methode.ControlEvidence permission is required to provide Evidence to the Load method. Ein SecurityException wird ausgelöst, wenn der Aufrufer nicht über die erforderlichen Berechtigungen verfügt.A SecurityException is thrown if the caller does not have the necessary permissions. Weitere Informationen finden Sie unter System.Security.Permissions.SecurityPermission und System.Security.Permissions.SecurityPermissionFlag.See System.Security.Permissions.SecurityPermission and System.Security.Permissions.SecurityPermissionFlag for more information.

Die msxsl:script Element gelten die folgenden Anforderungen:The msxsl:script element has the following requirements:

  • Die msxsl:script -Element einen Teil der urn:schemas-microsoft-com:xslt Namespace.The msxsl:script element belongs to the urn:schemas-microsoft-com:xslt namespace. Das Stylesheet muss die Namespacedeklaration enthalten xmlns:msxsl=urn:schemas-microsoft-com:xslt.The style sheet must include the namespace declaration xmlns:msxsl=urn:schemas-microsoft-com:xslt.

  • Die msxsl:script -Element enthalten kann eine language Attribut, das die zu verwendende Skriptsprache angibt.The msxsl:script element can include a language attribute that specifies the scripting language to use. Der Wert des der language Attribut muss einen der folgenden sein: C#, CSharp, VB, VisualBasic, JScript oder JavaScript.The value of the language attribute must be one of the following: C#, CSharp, VB, VisualBasic, JScript, or JavaScript. Da der Name der Sprache nicht berücksichtigt wird, sind JavaScript und Javascript beide gültig.Because the language name is not case-sensitive, JavaScript and javascript are both valid. Wenn eine language Attribut nicht angegeben ist, wird standardmäßig für JScript.If a language attribute is not specified, it defaults to JScript.

  • Die msxsl:script -Element muss enthalten eine implements-prefix Attribut mit dem Präfix, das den Skriptblock zugeordneten Namespace darstellt.The msxsl:script element must include an implements-prefix attribute that contains the prefix representing the namespace associated with the script block. Dieser Namespace muss innerhalb der im Stylesheet definiert werden.This namespace must be defined within the style sheet. Ein Stylesheet kann mehrere Skriptblöcke enthalten, die vom Namespace gruppiert werden.A style sheet can include multiple script blocks which are grouped by namespace. Sie können keine Skriptblöcke mit mehreren Sprachen in den gleichen Namespace haben.You cannot have script blocks with multiple languages within the same namespace. Skriptblöcke können eine in einen anderen Skriptblock definierte Funktion aufrufen, die Skriptblöcke in den gleichen Namespace befinden.Script blocks can call a function defined in another script block, provided the script blocks reside within the same namespace. Der Inhalt eines Skriptblocks wird anhand der Regeln und die Syntax der Skriptsprache analysiert (angegeben durch die language Attribut).The contents of a script block are parsed according to the rules and syntax of the scripting language (supplied by the language attribute). Z. B. Wenn Sie einen C#-Skriptblock hatten, Kommentare würde das Präfix der // Zeichen.For example, if you had a C# script block, comments would be prefixed by the // characters. Die Kommentare muss ein gültiger XML-Inhalt.The comments must be valid XML content.

Note Es wird empfohlen, dass Sie in einem CDATA-Abschnitt Skriptblöcke umschließen.Note It is recommended that you wrap script blocks in a CDATA section.

```
<msxsl:script implements-prefix='xy' language='C#'>
<![CDATA[
// Add code here.
]

Konstruktoren

XslTransform() XslTransform() XslTransform() XslTransform()

Initialisiert eine neue Instanz der XslTransform-Klasse.Initializes a new instance of the XslTransform class.

Eigenschaften

XmlResolver XmlResolver XmlResolver XmlResolver

Legt den XmlResolver fest, der zum Auflösen externer Ressourcen verwendet wird, wenn die Transform-Methode aufgerufen wird.Sets the XmlResolver used to resolve external resources when the Transform method is called.

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als die Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
Load(IXPathNavigable) Load(IXPathNavigable) Load(IXPathNavigable) Load(IXPathNavigable)

Lädt das im IXPathNavigable enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the IXPathNavigable.

Load(IXPathNavigable, XmlResolver) Load(IXPathNavigable, XmlResolver) Load(IXPathNavigable, XmlResolver) Load(IXPathNavigable, XmlResolver)

Lädt das im IXPathNavigable enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the IXPathNavigable.

Load(IXPathNavigable, XmlResolver, Evidence) Load(IXPathNavigable, XmlResolver, Evidence) Load(IXPathNavigable, XmlResolver, Evidence) Load(IXPathNavigable, XmlResolver, Evidence)

Lädt das im IXPathNavigable enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the IXPathNavigable. Mit dieser Methode können Sie die Berechtigungen für das Stylesheet einschränken, indem Sie Beweise angeben.This method allows you to limit the permissions of the style sheet by specifying evidence.

Load(String) Load(String) Load(String) Load(String)

Lädt das durch eine URL angegebene XSLT-Stylesheet.Loads the XSLT style sheet specified by a URL.

Load(String, XmlResolver) Load(String, XmlResolver) Load(String, XmlResolver) Load(String, XmlResolver)

Lädt das durch eine URL angegebene XSLT-Stylesheet.Loads the XSLT style sheet specified by a URL.

Load(XmlReader) Load(XmlReader) Load(XmlReader) Load(XmlReader)

Lädt das im XmlReader enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the XmlReader.

Load(XmlReader, XmlResolver) Load(XmlReader, XmlResolver) Load(XmlReader, XmlResolver) Load(XmlReader, XmlResolver)

Lädt das im XmlReader enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the XmlReader.

Load(XmlReader, XmlResolver, Evidence) Load(XmlReader, XmlResolver, Evidence) Load(XmlReader, XmlResolver, Evidence) Load(XmlReader, XmlResolver, Evidence)

Lädt das im XmlReader enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the XmlReader. Mit dieser Methode können Sie die Berechtigungen für das Stylesheet einschränken, indem Sie Beweise angeben.This method allows you to limit the permissions of the style sheet by specifying evidence.

Load(XPathNavigator) Load(XPathNavigator) Load(XPathNavigator) Load(XPathNavigator)

Lädt das im XPathNavigator enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the XPathNavigator.

Load(XPathNavigator, XmlResolver) Load(XPathNavigator, XmlResolver) Load(XPathNavigator, XmlResolver) Load(XPathNavigator, XmlResolver)

Lädt das im XPathNavigator enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the XPathNavigator.

Load(XPathNavigator, XmlResolver, Evidence) Load(XPathNavigator, XmlResolver, Evidence) Load(XPathNavigator, XmlResolver, Evidence) Load(XPathNavigator, XmlResolver, Evidence)

Lädt das im XPathNavigator enthaltene XSLT-Stylesheet.Loads the XSLT style sheet contained in the XPathNavigator. Mit dieser Methode können Sie die Berechtigungen für das Stylesheet einschränken, indem Sie Beweise angeben.This method allows you to limit the permissions of the style sheet by specifying evidence.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
Transform(IXPathNavigable, XsltArgumentList) Transform(IXPathNavigable, XsltArgumentList) Transform(IXPathNavigable, XsltArgumentList) Transform(IXPathNavigable, XsltArgumentList)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlReader aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to an XmlReader.

Transform(IXPathNavigable, XsltArgumentList, Stream) Transform(IXPathNavigable, XsltArgumentList, Stream) Transform(IXPathNavigable, XsltArgumentList, Stream) Transform(IXPathNavigable, XsltArgumentList, Stream)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen Stream aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to a Stream.

Transform(IXPathNavigable, XsltArgumentList, Stream, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, Stream, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, Stream, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, Stream, XmlResolver)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen Stream aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to a Stream.

Transform(IXPathNavigable, XsltArgumentList, TextWriter) Transform(IXPathNavigable, XsltArgumentList, TextWriter) Transform(IXPathNavigable, XsltArgumentList, TextWriter) Transform(IXPathNavigable, XsltArgumentList, TextWriter)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen TextWriter aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to a TextWriter.

Transform(IXPathNavigable, XsltArgumentList, TextWriter, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, TextWriter, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, TextWriter, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, TextWriter, XmlResolver)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen TextWriter aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to a TextWriter.

Transform(IXPathNavigable, XsltArgumentList, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, XmlResolver)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlReader aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to an XmlReader.

Transform(IXPathNavigable, XsltArgumentList, XmlWriter) Transform(IXPathNavigable, XsltArgumentList, XmlWriter) Transform(IXPathNavigable, XsltArgumentList, XmlWriter) Transform(IXPathNavigable, XsltArgumentList, XmlWriter)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlWriter aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to an XmlWriter.

Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver) Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver)

Transformiert die XML-Daten in IXPathNavigable unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlWriter aus.Transforms the XML data in the IXPathNavigable using the specified args and outputs the result to an XmlWriter.

Transform(String, String) Transform(String, String) Transform(String, String) Transform(String, String)

Transformiert die XML-Daten in der Eingabedatei und gibt das Ergebnis in eine Ausgabedatei aus.Transforms the XML data in the input file and outputs the result to an output file.

Transform(String, String, XmlResolver) Transform(String, String, XmlResolver) Transform(String, String, XmlResolver) Transform(String, String, XmlResolver)

Transformiert die XML-Daten in der Eingabedatei und gibt das Ergebnis in eine Ausgabedatei aus.Transforms the XML data in the input file and outputs the result to an output file.

Transform(XPathNavigator, XsltArgumentList) Transform(XPathNavigator, XsltArgumentList) Transform(XPathNavigator, XsltArgumentList) Transform(XPathNavigator, XsltArgumentList)

Transformiert die XML-Daten in XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlReader aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to an XmlReader.

Transform(XPathNavigator, XsltArgumentList, Stream) Transform(XPathNavigator, XsltArgumentList, Stream) Transform(XPathNavigator, XsltArgumentList, Stream) Transform(XPathNavigator, XsltArgumentList, Stream)

Transformiert die XML-Daten in XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen Stream aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to a Stream.

Transform(XPathNavigator, XsltArgumentList, Stream, XmlResolver) Transform(XPathNavigator, XsltArgumentList, Stream, XmlResolver) Transform(XPathNavigator, XsltArgumentList, Stream, XmlResolver) Transform(XPathNavigator, XsltArgumentList, Stream, XmlResolver)

Transformiert die XML-Daten in XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen Stream aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to a Stream.

Transform(XPathNavigator, XsltArgumentList, TextWriter) Transform(XPathNavigator, XsltArgumentList, TextWriter) Transform(XPathNavigator, XsltArgumentList, TextWriter) Transform(XPathNavigator, XsltArgumentList, TextWriter)

Transformiert die XML-Daten in XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen TextWriter aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to a TextWriter.

Transform(XPathNavigator, XsltArgumentList, TextWriter, XmlResolver) Transform(XPathNavigator, XsltArgumentList, TextWriter, XmlResolver) Transform(XPathNavigator, XsltArgumentList, TextWriter, XmlResolver) Transform(XPathNavigator, XsltArgumentList, TextWriter, XmlResolver)

Transformiert die XML-Daten in XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen TextWriter aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to a TextWriter.

Transform(XPathNavigator, XsltArgumentList, XmlResolver) Transform(XPathNavigator, XsltArgumentList, XmlResolver) Transform(XPathNavigator, XsltArgumentList, XmlResolver) Transform(XPathNavigator, XsltArgumentList, XmlResolver)

Transformiert die XML-Daten in XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlReader aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to an XmlReader.

Transform(XPathNavigator, XsltArgumentList, XmlWriter) Transform(XPathNavigator, XsltArgumentList, XmlWriter) Transform(XPathNavigator, XsltArgumentList, XmlWriter) Transform(XPathNavigator, XsltArgumentList, XmlWriter)

Transformiert die XML-Daten im XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlWriter aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to an XmlWriter.

Transform(XPathNavigator, XsltArgumentList, XmlWriter, XmlResolver) Transform(XPathNavigator, XsltArgumentList, XmlWriter, XmlResolver) Transform(XPathNavigator, XsltArgumentList, XmlWriter, XmlResolver) Transform(XPathNavigator, XsltArgumentList, XmlWriter, XmlResolver)

Transformiert die XML-Daten im XPathNavigator unter Verwendung der angegebenen args und gibt das Ergebnis an einen XmlWriter aus.Transforms the XML data in the XPathNavigator using the specified args and outputs the result to an XmlWriter.

Gilt für:

Threadsicherheit

XslTransform Objekte sind nur für Transformationsvorgänge threadsicher.XslTransform objects are only thread-safe for transform operations. Andere Vorgänge sind nicht unbedingt threadsicher sein.Other operations are not guaranteed to be thread-safe. Sie müssen sicherstellen, dass keine anderen Methoden für das Objekt während des Ladevorgangs aufgerufen werden.You must ensure that no other methods are called on the object during load operations.