IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Template XML ou Objet c# à partir de XSL


Sujet :

C#

  1. #1
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Points
    1 628
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Par défaut Template XML ou Objet c# à partir de XSL
    Bonjour,

    Je voudrais savoir s'il y a une possibilité de générer à partir d'un fichier XSL, des templates XML ? Ou encore des Objets C# ?

    Je sais qu'en utilisant xsd.exe on peut avoir des objets c#, mais à priori pas à partir d'un XSL à moins que je m'y prend mal.

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Points
    443
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Points : 443
    Par défaut
    Bonjour,

    Oui c'est largement faisable, par contre pas avec Xsd.exe, enfin ... pas à ma connaissance.
    A l'adresse suivante, tu trouveras un Custom Tool prenant en entrée un fichier XML, contenant une référence à un fichier XSL. Le custom tool lance ensuite la transformation XSL.

    Avec un fichier XSL adapté, tu peux générer le code que tu souhaites. Je crois qu'il livre 2 exemples de génération.

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Points
    1 628
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Par défaut
    Bonjour Paul et merci pour ta réponse,

    C'est peut être tordu ce que je demande (puisque un fichier XSL n'est qu'une feuille de style), mais si j'ai à ma disposition que le fichier XSL, est ce que je peut générer des fichiers XML ou des Objets ?

    Ou faut il que j'écris à la main l'XML, pour générer par la suite mes objets ?

  4. #4
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Points
    443
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Points : 443
    Par défaut
    Mhh,

    Vu qu'un fichier XSL est un fichier XML, tu peux facilement le parser et générer du code à partir de celui-ci. Si le fichier XSL contient toutes les informations dont tu as besoin pour générer un autre fichier XML ou une classe C#, jvois pas le soucis

    Après, comme dit plus haut, en utilisant le fichier XSL adapté, tu peux transformer ton fichier XSL en ce que tu veux. Une autre solution serait d'utiliser CodeDom pour générer du C#. Il faut simplement loader ton fichier XSL dans un XDocument par exemple, de recupérer les infos que tu souhaites et d'appeler les instructions CodeDom adéquates (création de méthode, de propriétés, variables membres, etc ...)

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Points
    1 628
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Par défaut
    J'ai essayé la solution avec le Custom Tool, mais ça ne marche pas le fichier généré ne contient qu'un message d'erreur ...

  6. #6
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Points
    443
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Points : 443
    Par défaut
    Ok, je la teste cet apres-midi. Wait & see.

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Points
    1 628
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Par défaut
    Super sympa merci Paul

  8. #8
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Points
    443
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Points : 443
    Par défaut
    Je viens d'essayer avec l'exemple MyXMLForm.xml et la feuille XSLT MakeXMLFormCode.xslt, cela fonctionne sans problème. Dis-moi comment tu l'as testé.

Discussions similaires

  1. générer un template xml à partir d'un programme C/C++
    Par ggwtf dans le forum XML/XSL et SOAP
    Réponses: 0
    Dernier message: 13/04/2010, 11h09
  2. [Fabrique] Factory d'objets dynamiques à partir de définition xml
    Par djimbo75 dans le forum Design Patterns
    Réponses: 5
    Dernier message: 17/07/2007, 21h01
  3. créer un objet Document à partir d'un String XML
    Par Tanebisse dans le forum Services Web
    Réponses: 1
    Dernier message: 21/03/2007, 16h03
  4. Créer d'objets DOM à partir d'XHTML sous forme de chaîne
    Par Oscar Hiboux dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 29/03/2006, 16h04
  5. affichage de tabulations en mode texte à partir de XSL
    Par closo dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 24/02/2004, 17h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo