Como aplicar uma transformação XSL de um documento XML para outro usando o Visual C++ .NET ou Visual C++ 2005

Traduções deste artigo Traduções deste artigo
ID do artigo: 815653 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Para obter uma versão Microsoft Visual translation from VPE for Csharp neste artigo, consulte 307322.

Para uma versão deste artigo do Microsoft Visual Basic. NET, consulte 300929.

Este artigo se refere aos seguintes namespaces Microsoft .NET Framework Class Library:
  • System.XML
  • System.XML.xsl

IN nesta tarefa

Sumário

Este artigo passo a passo descreve como aplicar uma transformação XSL (linguagem de folha de estilos extensível) (XSLT) a um documento XML usando a classe XslTransform para criar um novo documento XML. XSL é uma linguagem baseada em XML que foi projetada para transformar um documento XML em outro documento XML, ou para transformar um documento XML em qualquer outro documento estruturado.

Requisitos

A lista a seguir descreve o hardware recomendado, software, infra-estrutura de rede e service packs que você precisa:
  • Microsoft Visual Studio .NET ou Microsoft Visual Studio 2005
  • Microsoft .NET software Development Kit (SDK) QuickStarts
Este artigo pressupõe que você esteja familiarizado com os seguintes tópicos:
  • Terminologia XML
  • Criar e ler um arquivo XML
  • Sintaxe do XML Path Language (XPath)
  • XSL

Etapas para criar o exemplo

Este exemplo usa dois arquivos denominados Books.XML e Books.xsl. Você pode criar seus próprios arquivos Books.XML e Books.xsl ou você pode usar os arquivos de exemplo incluídos com o .NET Software Development Kit (SDK) QuickStarts. Copie os arquivos Books.XML e Books.xsl para a pasta onde você cria este projeto. Você pode encontrar esses arquivos na seguinte pasta:
\Arquivos de Programas\Microsoft visual Studio .NET\FrameworkSDK\Samples\QuickStart\Howto\Samples\Xml\Transformxml\Cs
  1. No Visual Studio. NET, crie um novo aplicativo de C++ gerenciado projeto.

    Observação No Visual Studio 2005, crie um novo aplicativo console CLR.
  2. Adicione o seguinte código para adicionar uma referência ao namespace System.XML :
    #using <System.XMl.Dll>
  3. Especificar a instrução using em XML e os espaços para nome XSL para que você não tem que qualificar declarações esses namespaces posteriormente no seu código. Usar a instrução usando antes de qualquer outro declarações.
    using namespace System::Xml;
    using namespace System::Xml::Xsl;
    
  4. Declarar as variáveis apropriadas e, em seguida, declare um objeto XslTransform para transformar documentos XML.
    XslTransform* myXslTransform;
    
  5. Construir um novo objeto XslTransform . A classe XslTransform é um processador XSLT que implementa o XSLT versão 1.0 recomendação.
    myXslTransform = new XslTransform();
  6. Use o método Load para carregar o objeto XslTransform com a folha de estilos. Esta folha de estilos transforma os detalhes do arquivo Books.xsl em uma lista simples de ISBN de livros.
    myXslTransform->Load(S"books.xsl");
    
  7. Chame o método Transform para iniciar a transformação, passando o XML de origem documento e o XML transformado documentam nome.
    myXslTransform->Transform(S"books.xml", S"ISBNBookList.xml");
    
  8. Criar e executar o projeto. Você pode ver o ISBNBookList.xml arquivo na sua pasta de arquivo de projeto.

Exemplo de código concluída

// This is the main project file for VC++ application project 
// generated using an Application Wizard.

#include "stdafx.h"

#using <mscorlib.dll>
#using <System.XMl.Dll>
#include <tchar.h>

using namespace System;
using namespace System::Xml;
using namespace System::Xml::Xsl;


// This is the entry point for this application
int _tmain(void)
{
    XslTransform* myXslTransform;
    myXslTransform = new XslTransform();
    myXslTransform->Load(S"books.xsl");
    myXslTransform->Transform(S"books.xml", S"ISBNBookList.xml");

    return 0;
}
Observação Você deve adicionar a opção de compilador de suporte de tempo de execução idioma comum (/ CLR: oldSyntax) no Visual C++ 2005 a compilar com êxito o exemplo de código anterior. Para adicionar a opção de compilador de suporte de tempo de execução idioma comum no Visual C++ 2005, siga estas etapas:
  1. Clique em Project e clique em <ProjectName> propriedades .

    Observação <ProjectName> é um espaço reservado para o nome do projeto.
  2. Expanda Configuration Properties e, em seguida, clique em Geral .
  3. Clique para selecionar Common Language Runtime suporte, sintaxe antiga (/ CLR: oldSyntax) no projeto oferece suporte a Common Language Runtime configuração no painel à direita, clique em Aplicar e em seguida, clique em OK .
Para obter mais informações sobre o common language runtime oferece suporte à opção do compilador, visite o seguinte site da Microsoft:
/ clr (Common Language Runtime Compilation)
http://msdn2.microsoft.com/en-us/library/k8d11d4s.aspx
Estas etapas se aplicam o artigo inteiro.
Observação : durante a compilação acima código no Visual C++ .NET 2003 , você pode receber C4996 aviso do compilador. Isso ocorre devido a 'System:: Xml::Xsl::XslTransform::Transform' está declarado como excluídos.
Use o seguinte código para que você não pode obter C4996 aviso do compilador.

Substituir :
myXslTransform->Transform(S"books.xml", S"ISBNBookList.xml");

com
myXslTransform->Transform(S"books.xml", S"ISBNBookList.xml", 0);

Referências

Para obter mais informações sobre a classe XslTransform , consulte a biblioteca de classes seguinte do Microsoft .NET Framework documentação:
Para obter mais informações sobre a classe XslTransform com o objeto XslTransform , consulte do seguinte Microsoft .NET Framework Developer guia documentação:
Para uma comparação prática de XSLT e ASP.NET, consulte a seguinte coluna MSDN online vozes Extreme XML:
Para obter mais informações sobre XML no. NET, consulte o "XML no .NET: .NET classes XML do Framework e translation from VPE for Csharp oferta simples, manipulação de dados escalonáveis" artigo da MSDN Magazine no seguinte site da Microsoft:
Para obter informações mais gerais sobre XML no .NET ou Visual C++. NET, consulte os seguintes grupos de notícias Usenet:

Propriedades

ID do artigo: 815653 - Última revisão: quarta-feira, 14 de novembro de 2007 - Revisão: 6.3
A informação contida neste artigo aplica-se a:
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
Palavras-chave: 
kbmt kbhowtomaster kbxml kbhowto KB815653 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 815653

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com