XslTransform.Load Método

Definição

Carrega a folha de estilos XSLT, incluindo folhas de estilo referenciadas nos elementos xsl:include e xsl:import.Loads the XSLT style sheet, including style sheets referenced in xsl:include and xsl:import elements.

Sobrecargas

Load(XPathNavigator, XmlResolver, Evidence)

Carrega a folha de estilos XSLT contida no XPathNavigator.Loads the XSLT style sheet contained in the XPathNavigator. Esse método permite que você limite as permissões da folha de estilos especificando a evidência.This method allows you to limit the permissions of the style sheet by specifying evidence.

Load(IXPathNavigable, XmlResolver, Evidence)

Carrega a folha de estilos XSLT contida no IXPathNavigable.Loads the XSLT style sheet contained in the IXPathNavigable. Esse método permite que você limite as permissões da folha de estilos especificando a evidência.This method allows you to limit the permissions of the style sheet by specifying evidence.

Load(XPathNavigator, XmlResolver)

Carrega a folha de estilos XSLT contida no XPathNavigator.Loads the XSLT style sheet contained in the XPathNavigator.

Load(IXPathNavigable, XmlResolver)

Carrega a folha de estilos XSLT contida no IXPathNavigable.Loads the XSLT style sheet contained in the IXPathNavigable.

Load(XmlReader, XmlResolver)

Carrega a folha de estilos XSLT contida no XmlReader.Loads the XSLT style sheet contained in the XmlReader.

Load(XmlReader, XmlResolver, Evidence)

Carrega a folha de estilos XSLT contida no XmlReader.Loads the XSLT style sheet contained in the XmlReader. Esse método permite que você limite as permissões da folha de estilos especificando a evidência.This method allows you to limit the permissions of the style sheet by specifying evidence.

Load(XPathNavigator)

Carrega a folha de estilos XSLT contida no XPathNavigator.Loads the XSLT style sheet contained in the XPathNavigator.

Load(IXPathNavigable)

Carrega a folha de estilos XSLT contida no IXPathNavigable.Loads the XSLT style sheet contained in the IXPathNavigable.

Load(XmlReader)

Carrega a folha de estilos XSLT contida no XmlReader.Loads the XSLT style sheet contained in the XmlReader.

Load(String)

Carrega a folha de estilos XSLT especificada por uma URL.Loads the XSLT style sheet specified by a URL.

Load(String, XmlResolver)

Carrega a folha de estilos XSLT especificada por uma URL.Loads the XSLT style sheet specified by a URL.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

Load(XPathNavigator, XmlResolver, Evidence)

Carrega a folha de estilos XSLT contida no XPathNavigator.Loads the XSLT style sheet contained in the XPathNavigator. Esse método permite que você limite as permissões da folha de estilos especificando a evidência.This method allows you to limit the permissions of the style sheet by specifying evidence.

public:
 void Load(System::Xml::XPath::XPathNavigator ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit

Parâmetros

stylesheet
XPathNavigator

Um objeto XPathNavigator que contém a folha de estilos a ser carregada.An XPathNavigator object containing the style sheet to load.

resolver
XmlResolver

O XmlResolver usado para carregar as folhas de estilos referenciadas nos elementos xsl:import e xsl:include.The XmlResolver used to load any style sheets referenced in xsl:import and xsl:include elements. Se for null, os recursos externos não serão resolvidos.If this is null, external resources are not resolved.

O XmlResolver não é armazenado em cache após o método Load ser concluído.The XmlResolver is not cached after the Load method completes.

evidence
Evidence

O Evidence definido no assembly gerado para o bloco de script na folha de estilos XSLT.The Evidence set on the assembly generated for the script block in the XSLT style sheet.

Se for null, os blocos de script não serão processados, a função XSLT document() não terá suporte e objetos de extensão privilegiados não serão permitidos.If this is null, script blocks are not processed, the XSLT document() function is not supported, and privileged extension objects are disallowed.

O chamador deve ter a permissão ControlEvidence para fornecer a evidência do assembly de script.The caller must have ControlEvidence permission in order to supply evidence for the script assembly. Chamadores de confiança parcial podem definir esse parâmetro como null.Semi-trusted callers can set this parameter to null.

Exceções

O nó atual não está em conformidade com uma folha de estilos válida.The current node does not conform to a valid style sheet.

A folha de estilos referenciada requer uma funcionalidade que não é permitida pela evidência fornecida.The referenced style sheet requires functionality that is not allowed by the evidence provided.

O chamador tenta fornecer a evidência e não tem a permissão ControlEvidence.The caller tries to supply evidence and does not have ControlEvidence permission.

Exemplos

O exemplo a seguir executa uma transformação XSLT usando uma folha de estilo de uma fonte externa.The following example performs an XSLT transformation using a style sheet from an outside source. Como a folha de estilos vem de uma fonte não confiável, os parâmetros resolver e evidence são definidos como null.Because the style sheet comes from an untrusted source, the resolver and evidence parameters are set to null.


public static void TransformFile (XPathNavigator xsltNav) {
 
 // Load the stylesheet. 
 XslTransform xslt = new XslTransform();
 xslt.Load(xsltNav, null, null);

 // Transform the file.
 xslt.Transform("books.xml", "books.html", null);
} 

public shared sub TransformFile (xsltNav as XPathNavigator) 
 
 ' Load the stylesheet.
 Dim xslt as XslTransform = new XslTransform()
 xslt.Load(xsltNav, nothing, nothing)

 ' Transform the file.
 xslt.Transform("books.xml", "books.html", nothing)
end sub

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

A folha de estilos é carregada a partir da posição atual do XPathNavigator.The style sheet is loaded from the current position of the XPathNavigator. Para usar uma parte do documento carregado como folha de estilos, navegue até o nó correspondente ao início da folha de estilos.To use a portion of the loaded document as the style sheet, navigate to the node corresponding to the beginning of the style sheet. Depois que o método Load retorna, o XPathNavigator é posicionado no início da folha de estilos (no nó xsl:style sheet).After the Load method returns, the XPathNavigator is positioned at the beginning of the style sheet (on the xsl:style sheet node).

Há diferentes maneiras de fornecer evidências.There are different ways to provide evidence. A tabela a seguir descreve o tipo de evidência a ser fornecido para cenários de usuário comuns.The following table describes what type of evidence to provide for common user scenarios.

CenárioScenario Tipo de evidência a fornecerType of evidence to provide
A folha de estilos XSLT é autônoma ou vem de uma base de código na qual você confia.The XSLT style sheet is self-contained or comes from a code base that you trust. Use a evidência do seu assembly.Use the evidence from your assembly.

XsltTransform xslt = new XslTransform(); 
xslt.Load(xslNav, resolver, this.GetType().Assembly.Evidence);
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem da origem é conhecida e há uma URL verificável.The origin of the source is known, and there is a verifiable URL. Crie evidências usando a URL.Create evidence using the URL.

XsltTransform xslt = new XslTransform(); 
Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); 
xslt.Load(xslNav,resolver,evidence);
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem de origem não é conhecida.The origin of the source is not known. Defina a evidência a null.Set evidence to null. Blocos de script não são processados, a função XSLT document() não é suportada, e objetos privilegiados de extensão não é permitida.Script blocks are not processed, the XSLT document() function is not supported, and privileged extension objects are disallowed.

Além disso, você também pode definir o parâmetro resolver como null.Additionally, you can also set the resolver parameter to null. Isso garante que os elementos xsl:import e xsl:include não sejam processados.This ensures that xsl:import and xsl:include elements are not processed.
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem de origem não é conhecido, mas você precisar de suporte de script.The origin of the source is not known, but you require script support. Evidência de solicitação do chamador.Request evidence from the caller. A API do chamador deve fornecer uma maneira de fornecer evidências, normalmente a classe Evidence.The API of the caller must provide a way to provide evidence, typically the Evidence class.

Segurança

SecurityPermission
para fornecer evidências.for providing evidence. Enumeração associada: ControlEvidenceAssociated enumeration: ControlEvidence

Veja também

Load(IXPathNavigable, XmlResolver, Evidence)

Carrega a folha de estilos XSLT contida no IXPathNavigable.Loads the XSLT style sheet contained in the IXPathNavigable. Esse método permite que você limite as permissões da folha de estilos especificando a evidência.This method allows you to limit the permissions of the style sheet by specifying evidence.

public:
 void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit

Parâmetros

stylesheet
IXPathNavigable

Um objeto implementando a interface IXPathNavigable.An object implementing the IXPathNavigable interface. No .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém a folha de estilos XSLT.In the .NET Framework, this can be either an XmlNode (typically an XmlDocument), or an XPathDocument containing the XSLT style sheet.

resolver
XmlResolver

O XmlResolver usado para carregar as folhas de estilos referenciadas nos elementos xsl:import e xsl:include.The XmlResolver used to load any style sheets referenced in xsl:import and xsl:include elements. Se for null, os recursos externos não serão resolvidos.If this is null, external resources are not resolved.

O XmlResolver não é armazenado em cache após o método Load ser concluído.The XmlResolver is not cached after the Load method completes.

evidence
Evidence

O Evidence definido no assembly gerado para o bloco de script na folha de estilos XSLT.The Evidence set on the assembly generated for the script block in the XSLT style sheet.

Se for null, os blocos de script não serão processados, a função XSLT document() não terá suporte e objetos de extensão privilegiados não serão permitidos.If this is null, script blocks are not processed, the XSLT document() function is not supported, and privileged extension objects are disallowed.

O chamador deve ter a permissão ControlEvidence para fornecer a evidência do assembly de script.The caller must have ControlEvidence permission in order to supply evidence for the script assembly. Chamadores de confiança parcial podem definir esse parâmetro como null.Semi-trusted callers can set this parameter to null.

Exceções

O recurso carregado não é uma folha de estilos válida.The loaded resource is not a valid style sheet.

A folha de estilos referenciada requer uma funcionalidade que não é permitida pela evidência fornecida.The referenced style sheet requires functionality that is not allowed by the evidence provided.

O chamador tenta fornecer a evidência e não tem a permissão ControlEvidence.The caller tries to supply evidence and does not have ControlEvidence permission.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Há diferentes maneiras de fornecer evidências.There are different ways to provide evidence. A tabela a seguir descreve o tipo de evidência a ser fornecido para cenários de usuário comuns.The following table describes what type of evidence to provide for common user scenarios.

CenárioScenario Tipo de evidência a fornecerType of evidence to provide
A folha de estilos XSLT é autônoma ou vem de uma base de código na qual você confia.The XSLT style sheet is self-contained or comes from a code base that you trust. Use a evidência do seu assembly.Use the evidence from your assembly.

XsltTransform xslt = new XslTransform(); 
xslt.Load(style sheet, resolver, this.GetType().Assembly.Evidence);
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem da origem é conhecida e há uma URL verificável.The origin of the source is known, and there is a verifiable URL. Crie evidências usando a URL.Create evidence using the URL.

XsltTransform xslt = new XslTransform(); 
Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); 
xslt.Load(style sheet,resolver,evidence);
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem de origem não é conhecida.The origin of the source is not known. Defina a evidência a null.Set evidence to null. Blocos de script não são processados, a função XSLT document() não é suportada, e objetos privilegiados de extensão não é permitida.Script blocks are not processed, the XSLT document() function is not supported, and privileged extension objects are disallowed.

Além disso, você também pode definir o parâmetro resolver como null.Additionally, you can also set the resolver parameter to null. Isso garante que os elementos xsl:import e xsl:include não sejam processados.This ensures that xsl:import and xsl:include elements are not processed.
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem de origem não é conhecido, mas você precisar de suporte de script.The origin of the source is not known, but you require script support. Evidência de solicitação do chamador.Request evidence from the caller. A API do chamador deve fornecer uma maneira de fornecer evidências, normalmente a classe Evidence.The API of the caller must provide a way to provide evidence, typically the Evidence class.

Segurança

SecurityPermission
para fornecer evidências.for providing evidence. Enumeração associada: ControlEvidenceAssociated enumeration: ControlEvidence

Veja também

Load(XPathNavigator, XmlResolver)

Aviso

Esta API agora é obsoleta.

Carrega a folha de estilos XSLT contida no XPathNavigator.Loads the XSLT style sheet contained in the XPathNavigator.

public:
 void Load(System::Xml::XPath::XPathNavigator ^ stylesheet, System::Xml::XmlResolver ^ resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As XPathNavigator, resolver As XmlResolver)

Parâmetros

stylesheet
XPathNavigator

Um objeto XPathNavigator que contém a folha de estilos XSLT.An XPathNavigator object that contains the XSLT style sheet.

resolver
XmlResolver

O XmlResolver usado para carregar as folhas de estilos referenciadas nos elementos xsl:import e xsl:include.The XmlResolver used to load any style sheets referenced in xsl:import and xsl:include elements. Se for null, os recursos externos não serão resolvidos.If this is null, external resources are not resolved.

O XmlResolver não é armazenado em cache após o método Load ser concluído.The XmlResolver is not cached after the Load method completes.

Atributos

Exceções

O nó atual não está em conformidade com uma folha de estilos válida.The current node does not conform to a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem permissão de UnmanagedCode.The style sheet contains embedded scripts, and the caller does not have UnmanagedCode permission.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

A folha de estilos é carregada a partir da posição atual do XPathNavigator.The style sheet is loaded from the current position of the XPathNavigator. Para usar uma parte do documento carregado como folha de estilos, navegue até o nó correspondente ao início da folha de estilos.To use a portion of the loaded document as the style sheet, navigate to the node corresponding to the beginning of the style sheet. Depois que o método Load retorna, o XPathNavigator é posicionado no início da folha de estilos (no nó xsl:style sheet).After the Load method returns, the XPathNavigator is positioned at the beginning of the style sheet (on the xsl:style sheet node).

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O assembly tem confiança total.The assembly has full trust. A prática recomendada é fornecer evidências usando o Load(XPathNavigator, XmlResolver, Evidence).The recommended practice is to provide evidence using the Load(XPathNavigator, XmlResolver, Evidence).

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Veja também

Load(IXPathNavigable, XmlResolver)

Aviso

Esta API agora é obsoleta.

Carrega a folha de estilos XSLT contida no IXPathNavigable.Loads the XSLT style sheet contained in the IXPathNavigable.

public:
 void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet, System::Xml::XmlResolver ^ resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As IXPathNavigable, resolver As XmlResolver)

Parâmetros

stylesheet
IXPathNavigable

Um objeto implementando a interface IXPathNavigable.An object implementing the IXPathNavigable interface. No .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém a folha de estilos XSLT.In the .NET Framework, this can be either an XmlNode (typically an XmlDocument), or an XPathDocument containing the XSLT style sheet.

resolver
XmlResolver

O XmlResolver usado para carregar as folhas de estilos referenciadas nos elementos xsl:import e xsl:include.The XmlResolver used to load any style sheets referenced in xsl:import and xsl:include elements. Se for null, os recursos externos não serão resolvidos.If this is null, external resources are not resolved.

O XmlResolver não é armazenado em cache após o método Load ser concluído.The XmlResolver is not cached after the Load method completes.

Atributos

Exceções

O recurso carregado não é uma folha de estilos válida.The loaded resource is not a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem permissão de UnmanagedCode.The style sheet contains embedded scripts, and the caller does not have UnmanagedCode permission.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O assembly tem confiança total.The assembly has full trust. A prática recomendada é fornecer evidências usando o método Load(IXPathNavigable, XmlResolver, Evidence).The recommended practice is to provide evidence using the Load(IXPathNavigable, XmlResolver, Evidence) method.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Veja também

Load(XmlReader, XmlResolver)

Aviso

Esta API agora é obsoleta.

Carrega a folha de estilos XSLT contida no XmlReader.Loads the XSLT style sheet contained in the XmlReader.

public:
 void Load(System::Xml::XmlReader ^ stylesheet, System::Xml::XmlResolver ^ resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As XmlReader, resolver As XmlResolver)

Parâmetros

stylesheet
XmlReader

Um objeto XmlReader que contém a folha de estilos XSLT.An XmlReader object that contains the XSLT style sheet.

resolver
XmlResolver

O XmlResolver usado para carregar as folhas de estilos referenciadas nos elementos xsl:import e xsl:include.The XmlResolver used to load any style sheets referenced in xsl:import and xsl:include elements. Se for null, os recursos externos não serão resolvidos.If this is null, external resources are not resolved.

O XmlResolver não é armazenado em cache após o método Load(XmlReader, XmlResolver) ser concluído.The XmlResolver is not cached after the Load(XmlReader, XmlResolver) method completes.

Atributos

Exceções

O nó atual não está em conformidade com uma folha de estilos válida.The current node does not conform to a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem permissão de UnmanagedCode.The style sheet contains embedded scripts, and the caller does not have UnmanagedCode permission.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Esse método carrega a folha de estilos XSLT, incluindo quaisquer folhas de estilo referenciadas nos elementos xsl:include e xsl:import.This method loads the XSLT style sheet, including any style sheets referenced in xsl:include and xsl:import elements. A folha de estilos é carregada do nó atual do XmlReader por meio de todos os seus filhos.The style sheet loads from the current node of the XmlReader through all its children. Isso permite que você use uma parte de um documento como folha de estilos.This enables you to use a portion of a document as the style sheet.

Depois que o método Load retornar, o XmlReader será posicionado no próximo nó após o final da folha de estilos.After the Load method returns, the XmlReader is positioned on the next node after the end of the style sheet. Se o final do documento é alcançada, XmlReader está localizado no final do arquivo (EOF).If the end of the document is reached, the XmlReader is positioned at the end of file (EOF).

Se a folha de estilos contiver entidades, você deverá especificar um XmlReader que possa resolver entidades (XmlReader.CanResolveEntity retorna true).If the style sheet contains entities, you should specify an XmlReader that can resolve entities (XmlReader.CanResolveEntity returns true). Nesse caso, um XmlValidatingReader pode ser usado.In this case, an XmlValidatingReader can be used.

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O assembly tem confiança total.The assembly has full trust. A prática recomendada é fornecer evidências usando o método Load(XmlReader, XmlResolver, Evidence).The recommended practice is to provide evidence using the Load(XmlReader, XmlResolver, Evidence) method.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Veja também

Load(XmlReader, XmlResolver, Evidence)

Carrega a folha de estilos XSLT contida no XmlReader.Loads the XSLT style sheet contained in the XmlReader. Esse método permite que você limite as permissões da folha de estilos especificando a evidência.This method allows you to limit the permissions of the style sheet by specifying evidence.

public:
 void Load(System::Xml::XmlReader ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit

Parâmetros

stylesheet
XmlReader

Um objeto XmlReader que contém a folha de estilos a ser carregada.An XmlReader object containing the style sheet to load.

resolver
XmlResolver

O XmlResolver usado para carregar as folhas de estilos referenciadas nos elementos xsl:import e xsl:include.The XmlResolver used to load any style sheets referenced in xsl:import and xsl:include elements. Se for null, os recursos externos não serão resolvidos.If this is null, external resources are not resolved.

O XmlResolver não é armazenado em cache após o método Load ser concluído.The XmlResolver is not cached after the Load method completes.

evidence
Evidence

O Evidence definido no assembly gerado para o bloco de script na folha de estilos XSLT.The Evidence set on the assembly generated for the script block in the XSLT style sheet.

Se for null, os blocos de script não serão processados, a função XSLT document() não terá suporte e objetos de extensão privilegiados não serão permitidos.If this is null, script blocks are not processed, the XSLT document() function is not supported, and privileged extension objects are disallowed.

O chamador deve ter a permissão ControlEvidence para fornecer a evidência do assembly de script.The caller must have ControlEvidence permission in order to supply evidence for the script assembly. Chamadores de confiança parcial podem definir esse parâmetro como null.Semi-trusted callers can set this parameter to null.

Exceções

O nó atual não está em conformidade com uma folha de estilos válida.The current node does not conform to a valid style sheet.

A folha de estilos referenciada requer uma funcionalidade que não é permitida pela evidência fornecida.The referenced style sheet requires functionality that is not allowed by the evidence provided.

O chamador tenta fornecer a evidência e não tem a permissão ControlEvidence.The caller tries to supply evidence and does not have ControlEvidence permission.

Exemplos

O exemplo a seguir executa uma transformação XSLT em que xsltReader é uma XmlReader que contém uma folha de estilos e secureURL é uma URL confiável que pode ser usada para criar Evidence.The following example performs an XSLT transformation where xsltReader is an XmlReader containing a style sheet and secureURL is a trusted URL that can be used to create Evidence. O método XmlSecureResolver.CreateEvidenceForUrl é usado para criar Evidence que é aplicado à folha de estilos.The XmlSecureResolver.CreateEvidenceForUrl method is used to create Evidence which is applied to the style sheet.

void TransformFile( XmlReader^ xsltReader, String^ secureURL )
{
   
   // Load the stylesheet using a default XmlUrlResolver and Evidence 
   // created using the trusted URL.
   XslTransform^ xslt = gcnew XslTransform;
   xslt->Load( xsltReader, gcnew XmlUrlResolver, XmlSecureResolver::CreateEvidenceForUrl( secureURL ) );
   
   // Transform the file.
   xslt->Transform("books.xml","books.html",gcnew XmlUrlResolver);
}


public static void TransformFile (XmlReader xsltReader, String secureURL) {
 
 // Load the stylesheet using a default XmlUrlResolver and Evidence 
 // created using the trusted URL.
 XslTransform xslt = new XslTransform();
 xslt.Load(xsltReader, new XmlUrlResolver(), XmlSecureResolver.CreateEvidenceForUrl(secureURL));

 // Transform the file.
 xslt.Transform("books.xml", "books.html", new XmlUrlResolver());
} 

public shared sub TransformFile (xsltReader as XmlReader, secureURL as String) 
 
 ' Load the stylesheet using a default XmlUrlResolver and Evidence 
 ' created using the trusted URL.
 Dim xslt as XslTransform = new XslTransform()
 xslt.Load(xsltReader, new XmlUrlResolver(), XmlSecureResolver.CreateEvidenceForUrl(secureURL))

 ' Transform the file.
 xslt.Transform("books.xml", "books.html", new XmlUrlResolver())
end sub

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Esse método carrega a folha de estilos XSLT, incluindo quaisquer folhas de estilo referenciadas nos elementos xsl:include e xsl:import.This method loads the XSLT style sheet, including any style sheets referenced in xsl:include and xsl:import elements. A folha de estilos é carregada do nó atual do XmlReader por meio de todos os seus filhos.The style sheet loads from the current node of the XmlReader through all its children. Isso permite que você use uma parte de um documento como folha de estilos.This enables you to use a portion of a document as the style sheet.

Depois que o método Load retornar, o XmlReader será posicionado no próximo nó após o final da folha de estilos.After the Load method returns, the XmlReader is positioned on the next node after the end of the style sheet. Se o final do documento é alcançada, XmlReader está localizado no final do arquivo (EOF).If the end of the document is reached, the XmlReader is positioned at the end of file (EOF).

Se a folha de estilos contiver entidades, você deverá especificar um XmlReader que possa resolver entidades (XmlReader.CanResolveEntity retorna true).If the style sheet contains entities, you should specify an XmlReader that can resolve entities (XmlReader.CanResolveEntity returns true). Nesse caso, um XmlValidatingReader pode ser usado.In this case, an XmlValidatingReader can be used.

Há diferentes maneiras de fornecer evidências.There are different ways to provide evidence. A tabela a seguir descreve o tipo de evidência a ser fornecido para cenários de usuário comuns.The following table describes what type of evidence to provide for common user scenarios.

CenárioScenario Tipo de evidência a fornecerType of evidence to provide
A folha de estilos XSLT é autônoma ou vem de uma base de código na qual você confia.The XSLT style sheet is self-contained or comes from a code base that you trust. Use a evidência do seu assembly.Use the evidence from your assembly.

XsltTransform xslt = new XslTransform(); 
xslt.Load(xslReader, resolver, this.GetType().Assembly.Evidence);
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem da origem é conhecida e há uma URL verificável.The origin of the source is known, and there is a verifiable URL. Crie evidências usando a URL.Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(stylesheetURL); 
xslt.Load(xslReader,resolver,evidence);
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem de origem não é conhecida.The origin of the source is not known. Defina a evidência a null.Set evidence to null. Blocos de script não são processados, a função XSLT document() não é suportada, e objetos privilegiados de extensão não é permitida.Script blocks are not processed, the XSLT document() function is not supported, and privileged extension objects are disallowed.

Além disso, você também pode definir o parâmetro resolver como null.Additionally, you can also set the resolver parameter to null. Isso garante que os elementos xsl:import e xsl:include não sejam processados.This ensures that xsl:import and xsl:include elements are not processed.
A folha de estilos XSLT vem de uma fonte externa.The XSLT style sheet comes from an outside source. A origem de origem não é conhecido, mas você precisar de suporte de script.The origin of the source is not known, but you require script support. Evidência de solicitação do chamador.Request evidence from the caller. A API do chamador deve fornecer uma maneira de fornecer evidências, normalmente a classe Evidence.The API of the caller must provide a way to provide evidence, typically the Evidence class.

Segurança

SecurityPermission
para fornecer evidências.for providing evidence. Enumeração associada: ControlEvidenceAssociated enumeration: ControlEvidence

Veja também

Load(XPathNavigator)

Aviso

Esta API agora é obsoleta.

Carrega a folha de estilos XSLT contida no XPathNavigator.Loads the XSLT style sheet contained in the XPathNavigator.

public:
 void Load(System::Xml::XPath::XPathNavigator ^ stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.XPathNavigator stylesheet);
member this.Load : System.Xml.XPath.XPathNavigator -> unit
Public Sub Load (stylesheet As XPathNavigator)

Parâmetros

stylesheet
XPathNavigator

Um objeto XPathNavigator que contém a folha de estilos XSLT.An XPathNavigator object that contains the XSLT style sheet.

Atributos

Exceções

O nó atual não está em conformidade com uma folha de estilos válida.The current node does not conform to a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem permissão de UnmanagedCode.The style sheet contains embedded scripts, and the caller does not have UnmanagedCode permission.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Esse método carrega a folha de estilos XSLT, incluindo quaisquer folhas de estilo referenciadas nos elementos xsl:include e xsl:import.This method loads the XSLT style sheet, including any style sheets referenced in xsl:include and xsl:import elements. Os recursos externos são resolvidos usando um XmlUrlResolver sem credenciais de usuário.External resources are resolved using an XmlUrlResolver with no user credentials. Se as folhas de estilo estiverem localizadas 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.If the style sheet(s) are located on a network resource which requires authentication, use the overload that takes an XmlResolver as one of its arguments and specify an XmlResolver with the necessary credentials.

A folha de estilos é carregada a partir da posição atual do XPathNavigator.The style sheet is loaded from the current position of the XPathNavigator. Para usar apenas uma parte do documento carregado como folha de estilos, navegue até o nó correspondente ao início da folha de estilos.To use just a portion of the loaded document as the style sheet, navigate to the node corresponding to the beginning of the style sheet. Depois que o método Load retorna, o XPathNavigator é posicionado no início da folha de estilos (no nó xsl:style sheet).After the Load method returns, the XPathNavigator is positioned at the beginning of the style sheet (on the xsl:style sheet node).

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O assembly tem confiança total.The assembly has full trust. A prática recomendada é fornecer evidências usando o método Load(XPathNavigator, XmlResolver, Evidence).The recommended practice is to provide evidence using the Load(XPathNavigator, XmlResolver, Evidence) method.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Load(IXPathNavigable)

Aviso

Esta API agora é obsoleta.

Carrega a folha de estilos XSLT contida no IXPathNavigable.Loads the XSLT style sheet contained in the IXPathNavigable.

public:
 void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.IXPathNavigable stylesheet);
member this.Load : System.Xml.XPath.IXPathNavigable -> unit
Public Sub Load (stylesheet As IXPathNavigable)

Parâmetros

stylesheet
IXPathNavigable

Um objeto implementando a interface IXPathNavigable.An object implementing the IXPathNavigable interface. No .NET Framework, isso pode ser um XmlNode (normalmente um XmlDocument) ou um XPathDocument que contém a folha de estilos XSLT.In the .NET Framework, this can be either an XmlNode (typically an XmlDocument), or an XPathDocument containing the XSLT style sheet.

Atributos

Exceções

O recurso carregado não é uma folha de estilos válida.The loaded resource is not a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem permissão de UnmanagedCode.The style sheet contains embedded scripts, and the caller does not have UnmanagedCode permission.

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Esse método carrega a folha de estilos XSLT, incluindo quaisquer folhas de estilo referenciadas nos elementos xsl:include e xsl:import.This method loads the XSLT style sheet, including any style sheets referenced in xsl:include and xsl:import elements. Os recursos externos são resolvidos usando um XmlUrlResolver sem credenciais de usuário.External resources are resolved using an XmlUrlResolver with no user credentials. Se as folhas de estilo estiverem localizadas 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.If the style sheet(s) are located on a network resource which requires authentication, use the overload that takes an XmlResolver as one of its arguments and specify an XmlResolver with the necessary credentials.

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O assembly tem confiança total.The assembly has full trust. A prática recomendada é fornecer evidências usando o método Load(IXPathNavigable, XmlResolver, Evidence).The recommended practice is to provide evidence using the Load(IXPathNavigable, XmlResolver, Evidence) method.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Load(XmlReader)

Aviso

Esta API agora é obsoleta.

Carrega a folha de estilos XSLT contida no XmlReader.Loads the XSLT style sheet contained in the XmlReader.

public:
 void Load(System::Xml::XmlReader ^ stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XmlReader stylesheet);
member this.Load : System.Xml.XmlReader -> unit
Public Sub Load (stylesheet As XmlReader)

Parâmetros

stylesheet
XmlReader

Um objeto XmlReader que contém a folha de estilos XSLT.An XmlReader object that contains the XSLT style sheet.

Atributos

Exceções

O nó atual não está em conformidade com uma folha de estilos válida.The current node does not conform to a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem permissão de UnmanagedCode.The style sheet contains embedded scripts, and the caller does not have UnmanagedCode permission.

Exemplos

O exemplo a seguir transforma um arquivo XML classificando todos os livros por título.The following example transforms an XML file sorting all the books by title.

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Xsl;
using namespace System::Xml::XPath;
int main()
{
   String^ filename = "books.xml";
   String^ stylesheet = "titles.xsl";
   
   // Create the reader to load the stylesheet. 
   // Move the reader to the xsl:stylesheet node.
   XmlTextReader^ reader = gcnew XmlTextReader( stylesheet );
   reader->Read();
   reader->Read();
   
   // Create the XslTransform object and load the stylesheet.
   XslTransform^ xslt = gcnew XslTransform;
   xslt->Load( reader );
   
   // Load the file to transform.
   XPathDocument^ doc = gcnew XPathDocument( filename );
   
   // Create an XmlTextWriter which outputs to the console.
   XmlTextWriter^ writer = gcnew XmlTextWriter( Console::Out );
   
   // Transform the file and send the output to the console.
   xslt->Transform(doc,nullptr,writer);
   writer->Close();
}

using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;

public class Sample
{
  private const String filename = "books.xml";
  private const String stylesheet = "titles.xsl";

  public static void Main()
  {
    //Create the reader to load the stylesheet. 
    //Move the reader to the xsl:stylesheet node.
    XmlTextReader reader = new XmlTextReader(stylesheet);
    reader.Read();
    reader.Read();

    //Create the XslTransform object and load the stylesheet.
    XslTransform xslt = new XslTransform();
    xslt.Load(reader);

    //Load the file to transform.
    XPathDocument doc = new XPathDocument(filename);
             
    //Create an XmlTextWriter which outputs to the console.
    XmlTextWriter writer = new XmlTextWriter(Console.Out);

    //Transform the file and send the output to the console.
    xslt.Transform(doc, null, writer);
    writer.Close();  
  }
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath

public class Sample

  private const filename as String = "books.xml"
  private const stylesheet as String = "titles.xsl"

  public shared sub Main()

    'Create the reader to load the stylesheet. 
    'Move the reader to the xsl:stylesheet node.
    Dim reader as XmlTextReader = new XmlTextReader(stylesheet)
    reader.Read()
    reader.Read()

    'Create the XslTransform object and load the stylesheet.
    Dim xslt as XslTransform = new XslTransform()
    xslt.Load(reader)

    'Load the file to transform.
    Dim doc as XPathDocument = new XPathDocument(filename)
             
    'Create an XmlTextWriter which outputs to the console.
    Dim writer as XmlTextWriter = new XmlTextWriter(Console.Out)

    'Transform the file and send the output to the console.
    xslt.Transform(doc, nothing, writer)
    writer.Close()  

  end sub
end class

O exemplo usa os seguintes arquivos de dados como entrada.The example uses the following data files as input.

books.xml

<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>

titles.xsl

<!--Stylesheet to sort all books by title-->
<!--Created 2/13/2001-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:template match="bookstore">
      <books>
        <xsl:apply-templates select="book">
          <xsl:sort select="title"/>
        </xsl:apply-templates>
       </books>
   </xsl:template>
  <xsl:template match="book">
          <book><xsl:copy-of select="node()"/></book>
  </xsl:template>
</xsl:stylesheet>

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Esse método carrega a folha de estilos XSLT, incluindo quaisquer folhas de estilo referenciadas nos elementos xsl:include e xsl:import.This method loads the XSLT style sheet, including any style sheets referenced in xsl:include and xsl:import elements. Os recursos externos são resolvidos usando um XmlUrlResolver sem credenciais de usuário.External resources are resolved using an XmlUrlResolver with no user credentials. Se as folhas de estilo estiverem localizadas 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.If the style sheet(s) are located on a network resource which requires authentication, use the overload that takes an XmlResolver as one of its arguments and specify an XmlResolver with the necessary credentials.

A folha de estilos é carregada do nó atual do XmlReader por meio de todos os seus filhos.The style sheet loads from the current node of the XmlReader through all its children. Isso permite que você use uma parte de um documento como folha de estilos.This enables you to use a portion of a document as the style sheet. Depois que o método Load retornar, o XmlReader será posicionado no próximo nó após o final da folha de estilos.After the Load method returns, the XmlReader is positioned on the next node after the end of the style sheet. Se o final do documento é alcançada, XmlReader está localizado no final do arquivo (EOF).If the end of the document is reached, the XmlReader is positioned at the end of file (EOF).

Se a folha de estilos contiver entidades, você deverá especificar um XmlReader que possa resolver entidades (XmlReader.CanResolveEntity retorna true).If the style sheet contains entities, you should specify an XmlReader that can resolve entities (XmlReader.CanResolveEntity returns true). Nesse caso, um XmlValidatingReader pode ser usado.In this case, an XmlValidatingReader can be used.

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O assembly tem confiança total.The assembly has full trust. A prática recomendada é fornecer evidências usando o método Load(XmlReader, XmlResolver, Evidence).The recommended practice is to provide evidence using the Load(XmlReader, XmlResolver, Evidence) method.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Load(String)

Carrega a folha de estilos XSLT especificada por uma URL.Loads the XSLT style sheet specified by a URL.

public:
 void Load(System::String ^ url);
public void Load (string url);
member this.Load : string -> unit
Public Sub Load (url As String)

Parâmetros

url
String

A URL que especifica a folha de estilos XSLT a ser carregada.The URL that specifies the XSLT style sheet to load.

Exceções

O recurso carregado não é uma folha de estilos válida.The loaded resource is not a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem a permissão UnmanagedCode.The style sheet contains embedded script, and the caller does not have UnmanagedCode permission.

Exemplos

O exemplo a seguir transforma um documento XML em um documento HTML.The following example transforms an XML document into an HTML document. Ele exibe o ISBN, o título e o preço de cada livro em uma tabela.It displays the ISBN, title, and price for each book in a table.

#using <System.dll>
#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Xsl;
using namespace System::Xml::XPath;

int main()
{
   String^ filename = "books.xml";
   String^ stylesheet = "output.xsl";

   //Load the stylesheet.
   XslTransform^ xslt = gcnew XslTransform;
   xslt->Load( stylesheet );

   //Load the file to transform.
   XPathDocument^ doc = gcnew XPathDocument( filename );

   //Create an XmlTextWriter which outputs to the console.
   XmlTextWriter^ writer = gcnew XmlTextWriter( Console::Out );

   //Transform the file and send the output to the console.
   xslt->Transform(doc,nullptr,writer,nullptr);
   writer->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;

public class Sample
{
  private const String filename = "books.xml";
  private const String stylesheet = "output.xsl";

  public static void Main()
  {
    //Load the stylesheet.
    XslTransform xslt = new XslTransform();
    xslt.Load(stylesheet);

    //Load the file to transform.
    XPathDocument doc = new XPathDocument(filename);
             
    //Create an XmlTextWriter which outputs to the console.
    XmlTextWriter writer = new XmlTextWriter(Console.Out);

    //Transform the file and send the output to the console.
    xslt.Transform(doc, null, writer, null);
    writer.Close();
  }
}
Option Strict
Option Explicit

Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath

Public Class Sample
    Private Shared filename1 As String = "books.xml"
    Private Shared stylesheet1 As String = "output.xsl"
    
    
    Public Shared Sub Main()
        'Load the stylesheet.
        Dim xslt As New XslTransform()
        xslt.Load(stylesheet1)
        
        'Load the file to transform.
        Dim doc As New XPathDocument(filename1)
        
        'Create an XmlTextWriter which outputs to the console.
        Dim writer As New XmlTextWriter(Console.Out)
        
        'Transform the file and send the output to the console.
        xslt.Transform(doc, Nothing, writer, Nothing)
        writer.Close()
    End Sub
End Class

O exemplo usa os dois arquivos de entrada a seguir.The sample uses the following two input files.

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

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl="http://www.w3.org/1999/XSL/Transform".The XSLT style sheet must include the namespace declaration xmlns:xsl="http://www.w3.org/1999/XSL/Transform".

Esse método carrega a folha de estilos XSLT, incluindo quaisquer folhas de estilo referenciadas nos elementos xsl:include e xsl:import.This method loads the XSLT style sheet, including any style sheets referenced in xsl:include and xsl:import elements. Os recursos externos são resolvidos usando um XmlUrlResolver sem credenciais de usuário.External resources are resolved using an XmlUrlResolver with no user credentials. Se as folhas de estilo estiverem localizadas 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.If the style sheet(s) are located on a network resource which requires authentication, use the overload that takes an XmlResolver as one of its arguments and specify an XmlResolver with the necessary credentials.

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O URI da folha de estilos é usado para criar evidências, que são aplicadas ao assembly.The URI of the style sheet is used to create evidence, which is applied to the assembly.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Load(String, XmlResolver)

Carrega a folha de estilos XSLT especificada por uma URL.Loads the XSLT style sheet specified by a URL.

public:
 void Load(System::String ^ url, System::Xml::XmlResolver ^ resolver);
public void Load (string url, System.Xml.XmlResolver resolver);
member this.Load : string * System.Xml.XmlResolver -> unit
Public Sub Load (url As String, resolver As XmlResolver)

Parâmetros

url
String

A URL que especifica a folha de estilos XSLT a ser carregada.The URL that specifies the XSLT style sheet to load.

resolver
XmlResolver

O XmlResolver a ser usado para carregar a folha de estilos e qualquer folha de estilos referenciada nos elementos xsl:import e xsl:include.The XmlResolver to use to load the style sheet and any style sheet(s) referenced in xsl:import and xsl:include elements.

Se for null, um XmlUrlResolver padrão sem nenhuma credencial de usuário será usado para abrir a folha de estilos.If this is null, a default XmlUrlResolver with no user credentials is used to open the style sheet. O XmlUrlResolver padrão não é usado para resolver nenhum recurso externo na folha de estilos, de modo que os elementos xsl:import e xsl:include não são resolvidos.The default XmlUrlResolver is not used to resolve any external resources in the style sheet, so xsl:import and xsl:include elements are not resolved.

O XmlResolver não é armazenado em cache após o método Load(String, XmlResolver) ser concluído.The XmlResolver is not cached after the Load(String, XmlResolver) method completes.

Exceções

O recurso carregado não é uma folha de estilos válida.The loaded resource is not a valid style sheet.

A folha de estilos contém scripts inseridos e o chamador não tem a permissão UnmanagedCode.The style sheet contains embedded script, and the caller does not have UnmanagedCode permission.

Exemplos

O exemplo a seguir transforma um documento XML em um documento HTML.The following example transforms an XML document into an HTML document. O exemplo carrega uma folha de estilos XSLT que contém um elemento xsl:include referenciando outra folha de estilos.The example loads an XSLT style sheet which contains an xsl:include element referencing another style sheet. Um XmlUrlResolver é passado para o método Load que define as credenciais necessárias para acessar o recurso de rede para a folha de estilos incluída.An XmlUrlResolver is passed to the Load method which sets the credentials necessary to access the network resource for the included style sheet.

using System;
using System.IO;
using System.Xml;
using System.Xml.XPath;
using System.Xml.Xsl;
using System.Net;

public class Sample
{
   private const String filename = "books.xml";
   private const String stylesheet = "sort.xsl";

   public static void Main()
   {
      //Create the XslTransform.
     XslTransform xslt = new XslTransform();

     //Create a resolver and set the credentials to use.
     XmlUrlResolver resolver = new XmlUrlResolver();
     resolver.Credentials = CredentialCache.DefaultCredentials;
  
     //Load the stylesheet.
     xslt.Load(stylesheet, resolver);

     //Load the XML data file.
     XPathDocument doc = new XPathDocument(filename);

     //Create the XmlTextWriter to output to the console.            
     XmlTextWriter writer = new XmlTextWriter(Console.Out);

     //Transform the file.
     xslt.Transform(doc, null, writer, null);
     writer.Close();
  }
}
Imports System.IO
Imports System.Xml
Imports System.Xml.XPath
Imports System.Xml.Xsl
Imports System.Net

public class Sample

   private shared filename as String = "books.xml"
   private shared stylesheet as String = "sort.xsl"

   public shared sub Main()
   
     'Create the XslTransform.
     Dim xslt as XslTransform = new XslTransform()

     'Create a resolver and set the credentials to use.
     Dim resolver as XmlUrlResolver = new XmlUrlResolver()
     resolver.Credentials = CredentialCache.DefaultCredentials

     'Load the stylesheet.
     xslt.Load(stylesheet, resolver)

     'Load the XML data file.
     Dim doc as XPathDocument = new XPathDocument(filename)

     'Create the XmlTextWriter to output to the console.             
     Dim writer as XmlTextWriter = new XmlTextWriter(Console.Out)

     'Transform the file.
     xslt.Transform(doc, nothing, writer, nothing)
     writer.Close()

  end sub
end class

O exemplo usa os seguintes arquivos de dados como entrada.The example uses the following data files as input.

books.xml

<!-- 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>

sort.xsl

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:template match="bookstore"/>
  <xsl:include href="http://serverA/includefile.xsl"/>  
  <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>

includefile.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">
      <xsl:sort select="@ISBN"/>
    </xsl:apply-templates>
    </TABLE>
    </BODY>
  </HTML>
</xsl:template>
</xsl:stylesheet>

Comentários

Observação

A classe XslTransform é obsoleta no .NET Framework versão 2,0.The XslTransform class is obsolete in the .NET Framework version 2.0. A classe XslCompiledTransform é o novo processador XSLT.The XslCompiledTransform class is the new XSLT processor. Para obter mais informações, consulte usando a classe XslCompiledTransform e migrando da classe XslTransform.For more information, see Using the XslCompiledTransform Class and Migrating From the XslTransform Class.

XslTransform dá suporte à sintaxe XSLT 1,0.XslTransform supports the XSLT 1.0 syntax. A folha de estilos XSLT deve incluir a declaração de namespace xmlns:xsl= http://www.w3.org/1999/XSL/Transform.The XSLT style sheet must include the namespace declaration xmlns:xsl= http://www.w3.org/1999/XSL/Transform.

Se a folha de estilos contiver script incorporado, o script será compilado em um assembly.If the style sheet contains embedded scripting, the script is compiled to an assembly. O URI da folha de estilos é usado para criar evidências, que são aplicadas ao assembly.The URI of the style sheet is used to create evidence, which is applied to the assembly.

Observação

Se o chamador não tiver a permissão UnmanagedCode, o script inserido não será compilado e um SecurityException será gerado.If the caller does not have UnmanagedCode permission, the embedded script is not compiled and a SecurityException is thrown. Consulte SecurityPermission e SecurityPermissionFlag.UnmanagedCode para obter mais informações.See SecurityPermission and SecurityPermissionFlag.UnmanagedCode for more information.

Veja também

Aplica-se a