Input di XmlDocument in XslTransform

L'XmlDocument fornisce funzionalità di modifica per un documento XML. Se l'XML deve essere modificato prima di essere inviato a una trasformazione, caricare l'XML in un XmlDocument, modificarlo e inviarlo all'XslTransform.

L'XmlDocument implementa l'interfaccia IXPathNavigable, quindi il documento può essere passato alla trasformazione dopo la modifica.

Nell'esempio di codice seguente viene illustrato come è possibile fornire un XmlDocument all'XslTransform, con l'output inviato a un XmlReader.

Dim doc as XmlDocument = new XmlDocument()
doc.Load("books.xml")
Dim transform As XslTransform = new XslTransform()
transform.Load("book.xsl")
Dim rdr As XmlReader = trans.Transform(doc, Nothing, Nothing)
while (rdr.Read())
end while
[C#]
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
XslTransform transform = new XslTransform();
transform.Load("book.xsl");
XmlReader rdr = trans.Transform(doc, null, null);
while (rdr.Read()) {}

Grazie alla capacità di modifica dell'XmlDocument, utilizzando la classe XmlDocument come input per una trasformazione si ottengono prestazioni meno buone rispetto all'utilizzo di un XPathDocument per le trasformazioni XSLT, in quanto l'XPathDocument è ottimizzato per le query XPath per l'archiviazione interna.

Vedere anche

Membri XmlDocument | Classe XmlDocument | Trasformazioni XSLT con la classe XslTransform | Implementazione del processore XSLT da parte della classe XslTransform | XPathNavigator nelle trasformazioni | XPathNodeIterator nelle trasformazioni | Input di XPathDocument in XslTransform | Input di XPathDocument in XslTransform