DataSet Typé --> XML utilisant XSLT [Résolu]

Signaler
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009
-
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009
-
Comment transformer un dataset en un fichier XML devant respecter la structure d'un fichier XSLT ???

Merci d'avance

6 réponses

Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
25
Bonjour,

nhervagault, je suis pas sur que ca réponde à la question. Devant respecter la structure d'un fichier XSLT ? ce serait pas plutot la structure définit par un schéma XSD ? un XSLT ne spécifie pas la structure d'un fichier XML qu'il recoit en entrée, c'est un fichier .xsd qui fait ca.
Dans ce cas, tu dois construire ton dataset à partir de ton xsd (les dataset repose sur les fichiers .xsd) ensuite la méthode getXml te renverra le contenu respectant ton schéma.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
27
Salut,

Il suffit de chercher un peu et on trouve dans la MSDN
string xmlDS = custDS.GetXml();

Bon coding
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
27
Oui, je me suis un peu emballé désolé.

Il y a une autre solution faire un xslt qui traquit le xml du dataset vers un xml correct pour etre transformé par le xslt donné.

Si on modifie le xsd du dataset son fonctionnement est peut être modifié. (je raconte peut etre une betise)

Il est possible de modifie la serialisation d'une classe en mettant les attributs qu'il faut sur la classe et les propriétés mais le dataset typé étant généré, on doit les perdre si on modifie le dataset avec le designer. (je raconte peut etre encore une betise)

A réfléchir.
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
25
Oui tu dis des betises :)

Quand on génére un dataset typés, on ne fait en fait que créer (via le designer) un fichier xsd, ce fichier xsd sera ensuite envoyé dans je ne sais plus quel outil automatiquement par Visual Studio afin de donner un fichier de code ("code behind") correspondant au fichier xsd, si on modife le fichier xsd sans rééxecuter l'outil pour regenerer le code le dataset restera le même.

Je suis quasi sur que les attributs de serialization ne sont pas pris en compte à ce niveau, il ne s'agit pas vraiment d'une serialization mais d'écrire un fichier xml à partir d'un schema déjà définit via le xsd (les attributs de serialization permettent justement de modifier ce schéma).

Par contre si le dataset n'est pas vraiment indispensable on peut utiliser linq to xml afin de générer le fichier XML que l'on souhaite.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009

Merci pour ces réponses. Je suis plus ou moins arrivé a ce que je devais faire.

Une autre question arrive suite a ma manipulation.

Devant réouvrir mon fichier XML dans exel je remarque que tout les champs DATE et TIME on été formatée d'une manière étrange...

regardez par vous même:

01T05:37:00+02:00  alors que je ne devrais avoir que 05:37:00

Que me conseilleriez vous ?<row><cell ss=""><data ss=""></data></cell></row>
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009

Pour être plus précis:

en passant de mon fichier XML vers HTML puis en sauvegardant le tout eh fichier XLS pour excel mes champs date et time ne sont pas conservés dans leurs état "simple" a savoir 14/12/2008 et 15:55:00 mais sont rajoutées les informations de zones etc...

Y-a- t il un moyen pour ne pas utiliser ces information dans la creation du fichier XML ???