43 votes

Générer automatiquement XSD en C # dans Visual Studio IDE

Je suis en cours d'exécution de Visual Studio 2010. J'ai un XSD schéma et que vous voulez utiliser xsd.exe outil pour générer des fichier C#. Je l'ai fait avec succès à partir d'une ligne de commande, mais maintenant je veux faire la même chose à partir de l'IDE.

Est-il bien connu de l'itinéraire pour cela? J'ai réussi à utiliser un pré-événement de construction, mais je déteste avoir l'outil en cours d'exécution sur chaque build. Normalement, il devrait fonctionner uniquement quand XSD changements.

L'ajout de l'généré .cs fichier de projet met en vertu de l' .xsd du même nom, de sorte que les IDE sait qu'ils sont liés.

Je sais que je peux mettre à "un Outil Personnalisé" sur mon .xsd mais je ne suis pas sûr si qui permet d'obtenir l'effet désiré. J'espérais de façon plus simple.

Et en fin de compte, VS2010 ne peut pas exécuter XSD.EXE parce qu'il vit dans le répertoire du SDK et le chemin connu de VS n'est évidemment pas l'inclure.

Toutes les suggestions sont les bienvenues!

40voto

marc_s Points 321990

Vous pouvez consulter Xsd2Code pour un complément VS qui le fait de manière interactive. L'auteur travaille également sur une version VS2010, à ma connaissance.

texte alternatif

1voto

(Je sais que la question est à propos de VS2010, mais depuis l'OP n'est pas mentionné ni dans le titre ni via les tags, j'aimerais partager avec vous une solution pour VS2012 et VS2013 pour ceux qui sont à la recherche d'une astuce pour les plus récentes VS les versions)

Pas besoin d'installer un 3ème partie add-ins pour les nouvelles versions de Visual Studio.

Pour générer le Designer.cs fichier pour .XSD dans VS2012 ou VS2013, vous pouvez simplement 'Exclure Du Projet"le désiré .XSD et après que 'Inclure Dans le Projet' arrière.
Ce sera la cause de VS pour générer des fichiers associés (Designer.cs, .XSC, .XSS) pour l' .XSD et les inclure à la solution automatiquement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X