2009-12-01 3 views

Répondre

3

Lire this article qui vous expliquera l'utilisation des deux:

  • JIT débogueur (en plaçant Debugger.Break() dans votre code de modèle) et
  • attacher manuellement à traiter Visual Studio avec la deuxième instance de Visual Studio

Le second est utile aux utilisateurs de systèmes Windows XP après:

  • Vista
  • Server 2008
  • Server 2008 R2
  • ...
2

Démarrez votre modèle avec:

< # @ modèle debug = "true" ...

et ajouter:

System.Diagnostics.Debugger.Break();

à votre code de modèle pour entrer dans la classe du générateur compilé.

+0

Thx, thx, thx, va vérifier. –

+0

Cela bloque Visual Studio. Au moins, il se bloque le mien. Je suppose parce qu'il n'y a pas de débogueurs liés au processus Visual Studio. J'ai trouvé ceci sur le net: "Note, si vous utilisez Windows Vista ou 2008 Server, cette technique (en utilisant Debugger.Break()) peut bloquer Visual Studio". http://www.olegsych.com/2008/09/t4-tutorial-debugging-code-generation-files/ –

+0

J'utilise VS2010 Beta 2. Il ne plante pas. Regardez la vidéo ici: http://channel9.msdn.com/posts/VSIPMarketing/VSX206-Code-Generation-with-T4/ @ 25:45 pour une démo. – codekaizen

4

Voici une méthode facile.

Ajouter des lignes comme celle-ci à votre code T4:

System.Diagnostics.Debug.WriteLine("This is a debug message."); 

Téléchargez et exécutez DebugView de Sysinternals. Vos messages de débogage apparaîtront dans la fenêtre de sortie.

(Dans les coulisses, ces appels utilisent OutputDebugString win32().)

Questions connexes