begin process at 2012 02 04 07:27:08
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

.NET

 > TRANSFORMATION XSLT EN .NET 2.0

TRANSFORMATION XSLT EN .NET 2.0


 Information sur la source

Note :
6,75 / 10 - par 4 personnes
6,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :.NET Source .NET ( DotNet ) Classé sous :xslt Niveau :Initié Date de création :09/09/2005 Vu :13 411

Auteur : poppyto

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note


 Description

Bonjour, :)

je me suis penché dernièrement sur les modifications du framework .net 2.0, et la partie transformation XSL a été changée et n'est pas très aisée d'utilisation. Voici donc ci-dessous un code SIMPLE à mettre en oeuvre pour faire une trsnformation à partir de fichiers XML et XSL

Source

  • public string Transform_XMLFile_With_XSLTFile(string XML_Filename,string XSL_Filename)
  • {
  • //On charge le fichier XML dans un XmlDocument
  • XmlDocument reader = new XmlDocument();
  • reader.Load(XML_Filename);
  • //On charge le fichier XSL dans un XmlDocument
  • XmlDocument XSLTDocument = new XmlDocument();
  • XSLTDocument.Load(XSL_Filename);
  • //Création du lecteur XML
  • XmlNodeReader XSLTDocumentReader = new XmlNodeReader(reader);
  • //Création du transformateur XSLT
  • XslCompiledTransform xslt = new XslCompiledTransform();
  • xslt.Load(XSLTDocument,null,null);
  • //là où sera enregistré la transformation
  • StringBuilder TransformOutput = new StringBuilder();
  • //paramètre d'écriture du fichier transformé
  • XmlWriterSettings settings = new XmlWriterSettings();
  • //paramètre un peu spécial, consultez msdn
  • settings.ConformanceLevel = ConformanceLevel.Auto;
  • //xslt.OutputSettings correspond aux paramètres <xsl:output> dans votre fichier XSL
  • //veillez à bien spécifier la sortie en html <xsl:output method="html" /> autrement
  • //c'est "xml" par défaut et les balises vides (exemple <div></div>) seront transformées
  • //en (</div>)
  • XmlWriter htmlDoc = XmlWriter.Create(TransformOutput, xslt.OutputSettings);
  • xslt.Transform(XSLTDocumentReader, null, htmlDoc, new XmlUrlResolver());
  • return TransformOutput.ToString();
  • }
public string Transform_XMLFile_With_XSLTFile(string XML_Filename,string XSL_Filename)
{

	//On charge le fichier XML dans un XmlDocument 
	
	XmlDocument reader = new XmlDocument();			
	reader.Load(XML_Filename);
	
	//On charge le fichier XSL dans un XmlDocument 
	
	XmlDocument XSLTDocument = new XmlDocument();			
	XSLTDocument.Load(XSL_Filename);


	//Création du lecteur XML 
	XmlNodeReader XSLTDocumentReader = new XmlNodeReader(reader);

	//Création du transformateur XSLT	
	XslCompiledTransform xslt = new XslCompiledTransform();
	xslt.Load(XSLTDocument,null,null);
	
	//là où sera enregistré la transformation 
	StringBuilder TransformOutput = new StringBuilder();
	
	//paramètre d'écriture du fichier transformé
	XmlWriterSettings settings = new XmlWriterSettings(); 
	
	//paramètre un peu spécial, consultez msdn
	settings.ConformanceLevel = ConformanceLevel.Auto;
	
	//xslt.OutputSettings correspond aux paramètres <xsl:output> dans votre fichier XSL
	//veillez à bien spécifier la sortie en html <xsl:output method="html" /> autrement 
	//c'est "xml" par défaut et les balises vides (exemple <div></div>) seront transformées
	//en (</div>)			
	
	XmlWriter htmlDoc = XmlWriter.Create(TransformOutput, xslt.OutputSettings);	
	xslt.Transform(XSLTDocumentReader, null, htmlDoc, new XmlUrlResolver());
		

	return TransformOutput.ToString();
}

 Conclusion

Bonnes transformations :)


 Sources du même auteur

Source .NET (Dotnet) OBTENIR LE PID PARENT D'UN PROCESSUS
Source avec une capture Source .NET (Dotnet) INTERFACE WEB SANS WINFORMS
Source .NET (Dotnet) SERIALIZER UNE ARBORESCENCE TREEVIEW

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) ORIONBANQUE par toutphp
Source avec Zip Source avec une capture Source .NET (Dotnet) ORIONAPPLICATION par toutphp
Source avec Zip SOCKET CONNEXION CLIENT & SERVEUR par ziedto83
Source avec Zip Source .NET (Dotnet) FFMPEG.NET : WRAPPER .NET DE FFMPEG par MasterShadows
Source avec Zip Source .NET (Dotnet) ATTACHER, CRÉER ET SAUVEGARDER UNE BASE DE DONNÉES SQL SERVE... par Alvepinai

 Sources en rapport avec celle ci

Source avec une capture Source .NET (Dotnet) XMLTRANSFORMER - CLASSE POUR SIMPLIFIER LA TRANSFORMATION EN... par RayBan
Source avec Zip Source avec une capture Source .NET (Dotnet) TRANSFORMATION D'UN XML À L'AIDE DE XSLT VERS HTML par EMSIEN
Source avec Zip Source .NET (Dotnet) PASSAGE DE PARAMÈTRES À UNE TRANSFORMATION XSLT par jesusonline
Source avec Zip Source .NET (Dotnet) PROCESSEUR XSLT par dgouttegattat
Source .NET (Dotnet) TRANSFORMATION XSLT par kbumbazz

Commentaires et avis

Commentaire de stailer le 10/09/2005 20:41:35

Salut, merci pour ce code... J'ai réalisé un composant qui fait des transformations XSLT, lié avec SQL Server. L'ancienne méthode de transformation est elle toujours compatible dans le framework 2.0 ?

Commentaire de poppyto le 11/09/2005 10:29:54 administrateur CS

Il y a plusieurs versions du Framework 2.0.
Cette version marche à partir de la v2.0.50215 (celle livrée sur le DVD beta).

Evidemment si l'ancienne version marchait encore, je n'aurait pas perdu mon temps à écrire ce code ^^.

Il y a eu pas mal de changement dans le namespace xml.
Par contre, il est possible de télécharger les fonctions obsolètes.

Commentaire de stailer le 11/09/2005 19:46:52

Ok, merci pour les précisions

Commentaire de sebmafate le 12/09/2005 11:27:14 administrateur CS

en fait, la transformation XLST du framework 1.1 fonctionne toujours (compatibilité oblige), mais beaucoup de classe sont obsolètes.

Commentaire de paradoxxl le 31/10/2006 16:17:15

cette source ne focntionne pas avec l'imporation de fichier xsl <xsl:import> je cherche actuelemnt une solution a ce probleme

Commentaire de verolaet le 02/01/2007 15:40:57

Merci! Enfin un exemple clair et simple de fusion xml et xsl en C# !
Tu m'as sauvée l'enervement! (je suis une gra&nde adepte de XML et XSL mais plus spécialiste en developpements Javascript que C#)

Commentaire de hollyroody le 03/01/2007 09:31:25

Ce code est bien pratique, mais je travaille malheureusement en .NET 1.1... pourrait on le traduire ou y'a t'il une source similaire qui existe ?

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

création d' un XSLT IDE avec # [ par moha_yougo ] je suis etudiant je cr&#233;er un XSLT&nbsp; IDE avec c#je c pas comment je v faire &#231;apouriez vous m'aidez@+++<IMG src="/imgs2/smil générateur de feuille destyle xslt avec c# (IDE) [ par moha_yougo ] bonjoiurje suis &#233;tudiant je veut r&#233;aliser un g&#233;n&#233;rateur de feuilles destyles xslt avec c#pour cela pour les sp&#233;ciofication: l problème xml et xslt [ par c_ensias ] Bonjour &#224; tous,J'ai un fichier xml dont j'ai appliqu&#233; un filtre xslt pour en extraire des donn&#233;es.Je voudrais que la sortie soit un fic Comment éviter la perte des espaces lors d'une transformation xslt ? [ par virgul ] Bonjour,Voila j'ai un webservice qui me fait une transformation xslt mais le seul problème c'est qu'il me tronque les espaces que j'ai entre mes balis Inclure et appelé un xslt dans mon projet [ par virgul ] Bonjour,Voila  j'aimerais dans Microsoft Office Infopath (une sorte de Winform en plus sophistiqué) introduire en référence (et donc qu'il soit inclus Transformation xml par xslt sur CF [ par nonold ] Bonjour,je cherche depuis pas mal de jours deja une solution pour pouvoir faire une transformation d'un xml via xslt pour en faire une page web. Sur l


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales