Comment débugger un programme de génération de code utilisé dans VS ?
Dans mon cas, il s'agit de la customisation de mon générateur de code à partir de l'edmx, mais la méthode que je propose s'applique à bien d'autre cas.
Comment faire pour débuguer le CodeGen qui s'exécute directement dans VS ?
J'ai trouvé une petite feinte qui me plait bien
(il y a probablement une façon plus "conventionnelle" de faire ça).
Pour ma part, je met dans mon générateur de code un MessageBox.Show qui aura pour effet de suspendre la génération.
- J'ouvre 2 VS : un pour le générateur de code et un pour utiliser mon programme de génération.
- Dans le deuxième je fais appel à mon générateur (dans le cas du générateur de code à partir de l'edmx, il me suffit de changer le Custom Tool). La génération me lance la MessageBox.
- De là, je retourne sur mon premier VS, j'attache le process DevEnv du deuxième VS, je met un point d'arrêt juste après le MessageBox.Show
- Je retourne sur mon premier VS et je clique sur Ok dans ma MessageBox
- Je retourne sur mon premier VS, je suis sur mon point d'arrêt et je peux maintenant débuguer dans mon générateur de code
Nice 
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :