Générer un fichier XSD avec utilitaire XSD.EXE (du SDK) par programmation

Signaler
Messages postés
687
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
27 août 2014
-
Messages postés
129
Date d'inscription
mardi 22 novembre 2005
Statut
Membre
Dernière intervention
30 décembre 2007
-
Bonjour,
je désirerais depuis mon application utiliser l'utilitaire XSD.EXE (du SDK)

l'idéal serait que j'arrive a l'executer sans mm passer par une application console mais bon la mm avec une application console je sais pas comment faire

Demarche depuis une invite de commande je ferais :
1 -
cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin2 - puis
xsd.exe

3-enfin qui genere le fichier XSD
xsd "C:\Documents and Settings\romagny\Mes documents\Nouveau dossier\Mediatheque.xml" /outputdir:c:/

Bon chui un peu coincé la
avec une application console j'ai tenté :

void Main()
    {
        string
smes;
        smes ="xsd "C:\\Documents and Settings\\romagny\\Mes documents\\Nouveau dossier\\Mediatheque.xml" /outputdir:c:/"
;
        Console.Write("cd C:\\Program Files\\Microsoft Visual Studio 8\\SDK\\v2.0\\Bin"
);
        Console.Write("xsd.exe"
);
        Console.Write(smes);
        Console.ReadLine();
    }

mais bon c pas du tout concluant
sinon jai essaye en lancant le proccess
Process.Start(

"C:/WINDOWS/system32/cmd.exe") ;

mais bon j'arrive pas à entrer par code les instructions ,il faut que je tape a la main ce n'est pas ce que je cherche

L'idéal serait que je n'ai mm pas a passer par une console,mais enfin si en passant par une console j'arrive a entrer mes instructions ci-dessus(par code) ca serait deja bien

pourriez vous m'aider ?

mercii

1 réponse

Messages postés
129
Date d'inscription
mardi 22 novembre 2005
Statut
Membre
Dernière intervention
30 décembre 2007
3
Salut,

il te suffit de lancer directement xsd.exe (et non cmd.exe) par l'appel à Process.Start(...) :
Process.Start("xsd.exe", arguments);
où 'arguments' est une chaîne rassemblant les arguments que tu dois passer à xsd.exe, comme "Mediatheque.xml /outputdir:C:/".

Si tu préfères éviter de passer par un appel à xsd.exe, tu peux essayer de charger ton fichier XML dans un dataset (par DataSet.ReadXml(...)), puis d'exporter la structure du dataset sous la forme d'un schéma XML (avec DataSet.WriteXmlSchema(...)).