XslCompiledTransform.Transform Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Executa a transformação XSLT.
Sobrecargas
Transform(XmlReader, XsltArgumentList, TextWriter) |
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e gera os resultados em um TextWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(IXPathNavigable, XsltArgumentList, XmlWriter) |
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e transmite o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(IXPathNavigable, XsltArgumentList, TextWriter) |
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e transmite o resultado para um TextWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(IXPathNavigable, XsltArgumentList, Stream) |
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e gera os resultados em um fluxo. A XsltArgumentList fornece argumentos adicionais de runtime. |
Transform(XmlReader, XsltArgumentList, XmlWriter) |
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e transmite o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(XmlReader, XsltArgumentList, Stream) |
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e gera os resultados em um fluxo. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(String, String) |
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado para um arquivo. |
Transform(String, XsltArgumentList, TextWriter) |
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado em um TextWriter. |
Transform(String, XsltArgumentList, Stream) |
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado em um fluxo. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(IXPathNavigable, XmlWriter) |
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e transmite o resultado para um XmlWriter. |
Transform(XmlReader, XmlWriter) |
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e transmite o resultado para um XmlWriter. |
Transform(String, XmlWriter) |
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado para um XmlWriter. |
Transform(XmlReader, XsltArgumentList, XmlWriter, XmlResolver) |
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e transmite o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais e o XmlResolver resolve a função XSLT |
Transform(String, XsltArgumentList, XmlWriter) |
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais. |
Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver) |
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e gera os resultados em um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais e o XmlResolver resolve a função XSLT |
Comentários
Observação
Existem diferenças entre XSLT compilou no modo de depuração e em XSLT compilados no modo de versão. Em algumas situações, folhas de estilos compiladas no modo de depuração não) lançarão erros durante Load, mas irão falhar mais tarde durante Transform. A mesma folha de estilo embutido no modo de lançamento falhará durante Load. Um exemplo desse comportamento é quando uma variável que não seja de um tipo nó- definido é atribuído a uma expressão onde nó- definido é necessário.
Transform(XmlReader, XsltArgumentList, TextWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e gera os resultados em um TextWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- TextWriter
O TextWriter para o qual deseja gerar.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Comentários
Se a folha de estilos incluir uma função XSLT document()
, ela será resolvida usando um XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Confira também
Aplica-se a
Transform(IXPathNavigable, XsltArgumentList, XmlWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e transmite o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- input
- IXPathNavigable
Um objeto que implementa a interface IXPathNavigable. No Microsoft .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém os dados a serem transformados.
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Comentários
Se a função XSLT document()
estiver habilitada, ela será resolvida usando um XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Esse método não dá suporte ao xsl:strip-space
elemento . Se a folha de estilos compilada incluiu o xsl:strip-space
elemento , você deve usar a Transform sobrecarga que usa um XmlReader como o argumento de entrada.
A interface de IXPathNavigable é implementada nas classes de XmlNode e de XPathDocument . Essas classes representam um cache de memória de dados XML.
A classe de XmlNode é baseado no W3C Document Object Model (DOM) e inclui recursos de edição.
A classe de XPathDocument é um repositório de dados somente leitura com base no modelo de dados XPath. XPathDocument é a classe recomendada para processar XSLT. Fornece um desempenho mais rápido quando comparada a XmlNode a classe.
As transformações são aplicadas ao documento no dataset. Ou seja se você passar em um nó que não seja o nó de diretório base, isso não impede que o processo de transformação acessar todos os nós do documento carregado. Para transformar um fragmento de nó, você deve criar um objeto que contém apenas o fragmento de nó, e passa esse objeto para o método de Transform . Para saber mais, confira Como transformar um fragmento de nó.
Confira também
Aplica-se a
Transform(IXPathNavigable, XsltArgumentList, TextWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e transmite o resultado para um TextWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- input
- IXPathNavigable
Um objeto que implementa a interface IXPathNavigable. No Microsoft .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém os dados a serem transformados.
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- TextWriter
O TextWriter para o qual deseja gerar.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Comentários
Se a função XSLT document()
estiver habilitada, ela será resolvida usando um XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Esse método não dá suporte ao xsl:strip-space
elemento . Se a folha de estilos compilada incluiu o xsl:strip-space
elemento , você deve usar a Transform sobrecarga que usa um XmlReader como o argumento de entrada.
A interface de IXPathNavigable é implementada nas classes de XmlNode e de XPathDocument . Essas classes representam um cache de memória de dados XML.
A classe de XmlNode é baseado no W3C Document Object Model (DOM) e inclui recursos de edição.
A classe de XPathDocument é um repositório de dados somente leitura com base no modelo de dados XPath. XPathDocument é a classe recomendada para processar XSLT. Fornece um desempenho mais rápido quando comparada a XmlNode a classe.
As transformações são aplicadas ao documento no dataset. Ou seja se você passar em um nó que não seja o nó de diretório base, isso não impede que o processo de transformação acessar todos os nós do documento carregado. Para transformar um fragmento de nó, você deve criar um objeto que contém apenas o fragmento de nó, e passa esse objeto para o método de Transform . Para saber mais, confira Como transformar um fragmento de nó.
Confira também
Aplica-se a
Transform(IXPathNavigable, XsltArgumentList, Stream)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e gera os resultados em um fluxo. A XsltArgumentList fornece argumentos adicionais de runtime.
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)
Parâmetros
- input
- IXPathNavigable
Um objeto que implementa a interface IXPathNavigable. No Microsoft .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém os dados a serem transformados.
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- Stream
O fluxo no qual você deseja gerar saída.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Exemplos
O exemplo a seguir executa uma transformação XSLT e gera saídas para um 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
Comentários
Se a função XSLT document()
estiver habilitada, ela será resolvida usando um XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Esse método não dá suporte ao xsl:strip-space
elemento . Se a folha de estilos compilada incluiu o xsl:strip-space
elemento , você deve usar a Transform sobrecarga que usa um XmlReader como o argumento de entrada.
A interface de IXPathNavigable é implementada nas classes de XmlNode e de XPathDocument . Essas classes representam um cache de memória de dados XML.
A classe de XmlNode é baseado no W3C Document Object Model (DOM) e inclui recursos de edição.
A classe de XPathDocument é um repositório de dados somente leitura com base no modelo de dados XPath. XPathDocument é a classe recomendada para processar XSLT. Fornece um desempenho mais rápido quando comparada a XmlNode a classe.
As transformações são aplicadas ao documento no dataset. Ou seja se você passar em um nó que não seja o nó de diretório base, isso não impede que o processo de transformação acessar todos os nós do documento carregado. Para transformar um fragmento de nó, você deve criar um objeto que contém apenas o fragmento de nó, e passa esse objeto para o método de Transform . Para saber mais, confira Como transformar um fragmento de nó.
Confira também
Aplica-se a
Transform(XmlReader, XsltArgumentList, XmlWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e transmite o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Comentários
Se a folha de estilos incluir uma função XSLT document()
, ela será resolvida usando um XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Confira também
Aplica-se a
Transform(XmlReader, XsltArgumentList, Stream)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e gera os resultados em um fluxo. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- Stream
O fluxo no qual você deseja gerar saída.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Comentários
Se a folha de estilos incluir uma função XSLT document()
, ela será resolvida usando um XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Confira também
Aplica-se a
Transform(String, String)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado para um arquivo.
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)
Parâmetros
- inputUri
- String
O URI do documento de entrada.
- resultsFile
- String
O URI do arquivo de saída.
Exceções
O valor inputUri
ou resultsFile
é null
.
Ocorreu um erro ao executar a transformação XSLT.
O documento de entrada não foi encontrado.
O valor inputUri
e resultsFile
inclui um nome de arquivo ou o diretório não foi encontrado.
Não foi possível resolver o valor inputUri
ou resultsFile
.
- ou -
Ocorreu um erro ao processar a solicitação.
inputUri
ou resultsFile
não é um URI válido.
Ocorreu um erro de análise ao carregar o documento de entrada.
Exemplos
O exemplo a seguir executa uma transformação e gera saídas para um arquivo.
// 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")
O exemplo usa os dois arquivos de entrada a seguir:
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>
Comentários
Esse método usa um padrão XmlUrlResolver sem credenciais de usuário para resolver os documentos de entrada e saída. Se qualquer um desses recursos estiver localizado em um recurso de rede que exija autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Um XmlReader com configurações padrão é usado para carregar o documento de entrada. O processamento de DTD está desabilitado no XmlReader. Se você precisar de processamento de DTD, crie um XmlReader com esse recurso habilitado e passe-o para o Transform método .
Confira também
Aplica-se a
Transform(String, XsltArgumentList, TextWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado em um 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)
Parâmetros
- inputUri
- String
O URI do documento de entrada.
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- TextWriter
O TextWriter para o qual deseja gerar.
Exceções
O valor inputUri
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
O valor inputUri
inclui um nome de arquivo ou não foi possível encontrar o diretório.
Não é possível resolver um valor inputUri
.
- ou -
Ocorreu um erro ao processar a solicitação.
inputUri
não é um URI válido.
Ocorreu um erro de análise ao carregar o documento de entrada.
Exemplos
O exemplo a seguir executa uma transformação XSLT e gera uma cadeia de caracteres.
// 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()
Comentários
Esse método usa um padrão XmlUrlResolver sem credenciais de usuário para resolver o documento de entrada e quaisquer instâncias da função XSLT document()
encontradas na folha de estilos. Se qualquer um desses recursos estiver localizado em um recurso de rede que exija autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Um XmlReader com configurações padrão é usado para carregar o documento de entrada. O processamento de DTD está desabilitado no XmlReader. Se você precisar de processamento de DTD, crie um XmlReader com esse recurso habilitado e passe-o para o Transform método .
Confira também
Aplica-se a
Transform(String, XsltArgumentList, Stream)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado em um fluxo. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- inputUri
- String
O URI do documento de entrada.
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- Stream
O fluxo no qual você deseja gerar saída.
Exceções
O valor inputUri
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
O valor inputUri
inclui um nome de arquivo ou não foi possível encontrar o diretório.
Não é possível resolver um valor inputUri
.
- ou -
Ocorreu um erro ao processar a solicitação.
inputUri
não é um URI válido.
Ocorreu um erro de análise ao carregar o documento de entrada.
Comentários
Esse método usa um padrão XmlUrlResolver sem credenciais de usuário para resolver o documento de entrada e quaisquer instâncias da função XSLT document()
encontradas na folha de estilos. Se algum desses recursos estiver localizado em um recurso de rede que exija autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Um XmlReader com configurações padrão é usado para carregar o documento de entrada. O processamento de DTD está desabilitado no XmlReader. Se você precisar de processamento de DTD, crie um XmlReader com esse recurso habilitado e passe-o para o Transform método .
Confira também
Aplica-se a
Transform(IXPathNavigable, XmlWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e transmite o resultado para um 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)
Parâmetros
- input
- IXPathNavigable
Um objeto que implementa a interface IXPathNavigable. No Microsoft .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém os dados a serem transformados.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Exemplos
O exemplo a seguir executa uma transformação XSLT e gera saídas para um XmlWriter objeto .
// 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()
Comentários
Se a função XSLT document()
estiver habilitada, ela será resolvida usando uma XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Esse método não dá suporte ao xsl:strip-space
elemento . Se a folha de estilos compilada incluiu o xsl:strip-space
elemento , você deve usar a Transform sobrecarga que usa um XmlReader como o argumento de entrada.
A interface de IXPathNavigable é implementada nas classes de XmlNode e de XPathDocument . Essas classes representam um cache de memória de dados XML.
A classe de XmlNode é baseado no W3C Document Object Model (DOM) e inclui recursos de edição.
A classe de XPathDocument é um repositório de dados somente leitura com base no modelo de dados XPath. XPathDocument é a classe recomendada para processar XSLT. Fornece um desempenho mais rápido quando comparada a XmlNode a classe.
As transformações são aplicadas ao documento no dataset. Ou seja se você passar em um nó que não seja o nó de diretório base, isso não impede que o processo de transformação acessar todos os nós do documento carregado. Para transformar um fragmento de nó, você deve criar um objeto que contém apenas o fragmento de nó, e passa esse objeto para o método de Transform . Para saber mais, confira Como transformar um fragmento de nó.
Confira também
Aplica-se a
Transform(XmlReader, XmlWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- 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)
Parâmetros
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Exemplos
O exemplo a seguir transforma o primeiro livro no arquivo 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()
Comentários
Se a função XSLT document()
estiver habilitada, ela será resolvida usando uma XmlUrlResolver sem credenciais de usuário. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Confira também
Aplica-se a
Transform(String, XmlWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado para um 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)
Parâmetros
- inputUri
- String
O URI do documento de entrada.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
Exceções
O valor inputUri
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
O valor inputUri
inclui um nome de arquivo ou não foi possível encontrar o diretório.
Não é possível resolver um valor inputUri
.
- ou -
Ocorreu um erro ao processar a solicitação.
inputUri
não é um URI válido.
Ocorreu um erro de análise ao carregar o documento de entrada.
Exemplos
O exemplo a seguir executa uma transformação XSLT e gera saídas para um XmlWriter objeto .
// 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()
Comentários
Esse método usa um padrão XmlUrlResolver sem credenciais de usuário para resolver o documento de entrada e quaisquer instâncias da função XSLT document()
encontradas na folha de estilos. Se algum desses recursos estiver localizado em um recurso de rede que exija autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Um XmlReader com configurações padrão é usado para carregar o documento de entrada. O processamento de DTD está desabilitado no XmlReader. Se você precisar de processamento de DTD, crie um XmlReader com esse recurso habilitado e passe-o para o Transform método .
Esse método não dá suporte ao xsl:strip-space
elemento . Se a folha de estilos compilada incluiu o xsl:strip-space
elemento , você deve usar a Transform sobrecarga que usa um XmlReader como o argumento de entrada.
Confira também
Aplica-se a
Transform(XmlReader, XsltArgumentList, XmlWriter, XmlResolver)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto XmlReader e transmite o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais e o XmlResolver resolve a função 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)
Parâmetros
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
- documentResolver
- XmlResolver
O XmlResolver usado para resolver a função XSLT document()
. Se isso for null
, a função document()
não será resolvida.
Exceções
O valor input
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
Exemplos
O exemplo a seguir usa um XmlSecureResolver para resolver a função 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
Confira também
Aplica-se a
Transform(String, XsltArgumentList, XmlWriter)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo URI e gera o resultado para um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais.
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)
Parâmetros
- inputUri
- String
O URI do documento de entrada.
- arguments
- XsltArgumentList
Um XsltArgumentList que contém os argumentos qualificados por namespace usados como a entrada para a transformação. Este valor pode ser null
.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
Exceções
O valor inputUri
ou results
é null
.
Ocorreu um erro ao executar a transformação XSLT.
O valor inputtUri
inclui um nome de arquivo ou não foi possível encontrar o diretório.
Não é possível resolver um valor inputUri
.
- ou -
Ocorreu um erro ao processar a solicitação.
inputUri
não é um URI válido.
Ocorreu um erro de análise ao carregar o documento de entrada.
Exemplos
O exemplo a seguir usa um XsltArgumentList objeto para criar um parâmetro que representa a data e a hora atuais.
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
O exemplo usa os dois arquivos de dados a seguir como entrada.
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>
Comentários
Esse método usa um padrão XmlUrlResolver sem credenciais de usuário para resolver o documento de entrada e quaisquer instâncias da função XSLT document()
encontradas na folha de estilos. Se algum desses recursos estiver localizado em um recurso de rede que exija autenticação, use a sobrecarga que usa um XmlResolver como um de seus argumentos e especifique um XmlResolver com as credenciais necessárias.
Um XmlReader com configurações padrão é usado para carregar o documento de entrada. O processamento de DTD está desabilitado no XmlReader. Se você precisar de processamento de DTD, crie um XmlReader com esse recurso habilitado e passe-o para o Transform método .
Confira também
Aplica-se a
Transform(IXPathNavigable, XsltArgumentList, XmlWriter, XmlResolver)
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
- Origem:
- XslCompiledTransform.cs
Executa a transformação usando o documento de entrada especificado pelo objeto IXPathNavigable e gera os resultados em um XmlWriter. O XsltArgumentList fornece argumentos de tempo de execução adicionais e o XmlResolver resolve a função 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)
Parâmetros
- input
- IXPathNavigable
O documento a ser transformado, que é especificado pelo objeto IXPathNavigable.
- arguments
- XsltArgumentList
Uma lista de argumentos como XsltArgumentList.
- results
- XmlWriter
O XmlWriter para o qual deseja gerar.
Se a folha de estilos contiver um elemento xsl:output
, você deverá criar o XmlWriter usando objeto XmlWriterSettings retornado da propriedade OutputSettings. Isso garante que o objeto XmlWriter tenha as configurações de saída corretas.
- documentResolver
- XmlResolver
O XmlResolver usado para resolver a função XSLT document()
. Se isso for null
, a função document()
não será resolvida.