Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az XslCompiledTransform osztály lecserélte az osztályt XslTransform . Ez az újabb osztály úgy lett kialakítva, hogy nagyon hasonló legyen.XslTransform A stíluslapok fordítása a Load módszerrel történik. Az átalakítások végrehajtása a Transform módszerrel történik.
Az alábbi eljárások általános XSLT-feladatokat mutatnak be, és összehasonlítják a kódot az osztály és az XslTransform XslCompiledTransform osztály használatával.
Fájl és kimenet átalakítása URI-vá
Kód az osztály használatával XslTransform .
XslTransform xslt = new XslTransform(); xslt.Load("output.xsl"); xslt.Transform("books.xml", "books.html");Dim xslt As New XslTransform() xslt.Load("output.xsl") xslt.Transform("books.xml", "books.html")Kód az osztály használatával XslCompiledTransform .
XslCompiledTransform xslt = new XslCompiledTransform(); xslt.Load("output.xsl"); xslt.Transform("books.xml", "books.html");Dim xslt As New XslCompiledTransform() xslt.Load("output.xsl") xslt.Transform("books.xml", "books.html")
Stíluslap fordítása és az alapértelmezett hitelesítő adatokkal rendelkező feloldó használata
Kód az osztály használatával XslTransform .
XslTransform xslt = new XslTransform(); XmlUrlResolver resolver = new XmlUrlResolver(); resolver.Credentials = CredentialCache.DefaultCredentials; xslt.Load("sort.xsl", resolver);Dim xslt As New XslTransform() Dim resolver As New XmlUrlResolver() resolver.Credentials = CredentialCache.DefaultCredentials xslt.Load("sort.xsl", resolver)Kód az osztály használatával XslCompiledTransform .
XslCompiledTransform xslt = new XslCompiledTransform(); XmlUrlResolver resolver = new XmlUrlResolver(); resolver.Credentials = CredentialCache.DefaultCredentials; xslt.Load("sort.xsl", XsltSettings.Default, resolver);Dim xslt As New XslCompiledTransform() Dim resolver As New XmlUrlResolver() resolver.Credentials = CredentialCache.DefaultCredentials xslt.Load("sort.xsl", XsltSettings.Default, resolver)
XSLT-paraméter használata
Kód az osztály használatával XslTransform .
XslTransform xslt = new XslTransform(); xslt.Load("order.xsl"); //Create the XsltArgumentList. XsltArgumentList argList = new XsltArgumentList(); //Create a parameter which represents the current date and time. DateTime d = DateTime.Now; argList.AddParam("date", "", d.ToString()); //Create the XmlTextWriter. XmlTextWriter writer = new XmlTextWriter("output.xml", null); //Transform the file. xslt.Transform(new XPathDocument(filename), argList, writer, null);Dim xslt As New XslTransform() xslt.Load("order.xsl") 'Create the XsltArgumentList. Dim argList As New XsltArgumentList() 'Create a parameter which represents the current date and time. Dim d As DateTime = DateTime.Now argList.AddParam("date", "", d.ToString()) 'Create the XmlTextWriter. Dim writer As New XmlTextWriter("output.xml", Nothing) 'Transform the file. xslt.Transform(New XPathDocument(filename), argList, writer, Nothing)Kód az osztály használatával XslCompiledTransform .
XslCompiledTransform xslt = new XslCompiledTransform(); xslt.Load("order.xsl"); // Create the XsltArgumentList. XsltArgumentList argList = new XsltArgumentList(); // Create a parameter which represents the current date and time. DateTime d = DateTime.Now; argList.AddParam("date", "", d.ToString()); // Create the XmlWriter. XmlWriter writer = XmlWriter.Create("output.xml", null); // Transform the file. xslt.Transform(new XPathDocument(filename), argList, writer);Dim xslt As New XslCompiledTransform() xslt.Load("order.xsl") ' Create the XsltArgumentList. Dim argList As New XsltArgumentList() ' Create a parameter which represents the current date and time. Dim d As DateTime = DateTime.Now argList.AddParam("date", "", d.ToString()) ' Create the XmlWriter. Dim writer As XmlWriter = XmlWriter.Create("output.xml", Nothing) ' Transform the file. xslt.Transform(New XPathDocument(filename), argList, writer)
XSLT-szkriptek engedélyezése
Feljegyzés
A szkriptblokkok csak .NET-keretrendszer támogatottak. A .NET Core vagy a .NET 5 vagy újabb verziók nem támogatják őket.
Kód az osztály használatával XslTransform .
XslTransform xslt = new XslTransform(); xslt.Load("output.xsl"); xslt.Transform("books.xml", "books.html");Dim xslt As New XslTransform() xslt.Load("output.xsl") xslt.Transform("books.xml", "books.html")Kód az osztály használatával XslCompiledTransform .
// Create the XsltSettings object with script enabled. XsltSettings settings = new XsltSettings(false,true); // Execute the transform. XslCompiledTransform xslt = new XslCompiledTransform(); xslt.Load("calc.xsl", settings, new XmlUrlResolver()); xslt.Transform("books.xml", "books.html");' Create the XsltSettings object with script enabled. Dim settings As New XsltSettings(False, True) ' Execute the transform. Dim xslt As New XslCompiledTransform() xslt.Load("calc.xsl", settings, New XmlUrlResolver()) xslt.Transform("books.xml", "books.html")
Az eredmények betöltése DOM-objektumba
Kód az osztály használatával XslTransform .
// Execute the transformation. XslTransform xslt = new XslTransform(); xslt.Load("output.xsl"); XmlReader reader = xslt.Transform(new XPathDocument("books.xml"), null, new XmlUrlResolver()); // Load the results into a DOM object. XmlDocument doc = new XmlDocument(); doc.Load(reader);' Execute the transformation. Dim xslt As New XslTransform() xslt.Load("output.xsl") Dim reader As XmlReader = xslt.Transform(New XPathDocument("books.xml"), Nothing, New XmlUrlResolver()) ' Load the results into a DOM object. Dim doc As XmlDocument = New XmlDocument() doc.Load(reader)Kód az osztály használatával XslCompiledTransform .
Feljegyzés
Az XslCompiledTransform osztály nem rendelkezik olyan metódussal, amely objektumként XmlReader adja vissza az XSLT-átalakítási eredményeket. Egy XML-fájlba azonban kimenetet adhat, és betöltheti az XML-fájlt egy másik objektumba.
// Execute the transformation. XslCompiledTransform xslt = new XslCompiledTransform(); xslt.Load("output.xsl"); xslt.Transform("books.xml", "output.xml"); // Load the results into a DOM object. XmlDocument doc = new XmlDocument(); doc.Load("output.xml");' Execute the transformation. Dim xslt As New XslCompiledTransform() xslt.Load("output.xsl") xslt.Transform("books.xml", "output.xml") ' Load the results into a DOM object. Dim doc As XmlDocument = New XmlDocument() doc.Load("output.xml")
Az eredmények streamelése egy másik adattárba
Kód az osztály használatával XslTransform .
// Execute the transformation. XslTransform xslt = new XslTransform(); xslt.Load("output.xsl"); XmlReader reader = xslt.Transform(new XPathDocument("books.xml"), null, new XmlUrlResolver()); // Load the results into an XPathDocument object. XPathDocument doc = new XPathDocument(reader);' Execute the transformation. Dim xslt As New XslTransform() xslt.Load("output.xsl") Dim reader As XmlReader = xslt.Transform(New XPathDocument("books.xml"), Nothing, New XmlUrlResolver()) ' Load the results into an XPathDocument object. Dim doc As XPathDocument = New XPathDocument(reader)Kód az osztály használatával XslCompiledTransform .
// Execute the transformation. XslCompiledTransform xslt = new XslCompiledTransform(); xslt.Load("output.xsl"); MemoryStream ms = new MemoryStream(); xslt.Transform(new XPathDocument("books.xml"), null, ms); // Load the results into an XPathDocument object. ms.Seek(0, SeekOrigin.Begin); XPathDocument doc = new XPathDocument(ms);' Execute the transformation. Dim xslt As New XslCompiledTransform() xslt.Load("output.xsl") Dim ms As MemoryStream = New MemoryStream() xslt.Transform(New XPathDocument("books.xml"), Nothing, ms) ' Load the results into an XPathDocument object. ms.Seek(0, SeekOrigin.Begin) Dim doc As XPathDocument = New XPathDocument(ms)