Frage

Ich versuche, die Ausführung einer T4 -Vorlage in Visual Studio 2008 zu debuggen.

Alle Informationen, die ich beim Debuggen von T4 -Vorlagen in Visual Studio 2008 finde, besagen, dass Sie in der Vorlage einen Haltepunkt (Red Dot) festlegen können, als ob es sich um eine reguläre Codedatei handelt. Ich habe den Clarius T4 Code Highlighter installiert, also ist meine T4 -Vorlage gefärbt, aber aber Ich kann keinen Haltepunkt festlegen. Wenn ich in den Rand klicke, passiert nichts.

Ich habe Debugger.break () ausprobiert, und es startet eine neue Instanz von vs.NET, aber er kann den Code nicht aus meiner Vorlage laden. Ich erhalte einen Dialog mit der Aufschrift "Es gibt keinen Quellcode für den aktuellen Standort." Dies geschieht, wenn ich dasselbe Projekt in der anderen Instanz geladen habe, wenn ich eine neue Instanz spüle.

Was gibt?

War es hilfreich?

Lösung 3

Ok- es herausgefunden. Das Starten einer neuen Instanz ist keine Option, unabhängig davon, was Olegs Artikel sagt. (Kein Diss an Mr. Sych, sein Blog ist Gospel für T4 Code Generation!)

  1. Starten Sie eine zweite Instanz von Visual Studio,
  2. Öffnen Sie eine Datei (jede Datei), damit das Debug -Menü angezeigt wird.
  3. Wählen Sie "zum Prozess anhängen ..." und wählen Sie die andere Vs.NET -Instanz aus
  4. Speichern Sie Ihre Vorlage in der angehängten Instanz von vs.NET (oder klicken Sie mit der rechten Maustaste und wählen Sie das benutzerdefinierte Tool aus.

Voila.

Andere Tipps

Legen Sie Folgendes ein:

<#@ template debug="true" hostSpecific="true" #>
<#@ import namespace="System.Diagnostics" #>

Dann in Ihrer Vorlage

Debugger.Launch();

VS wird den JIT -Debugger in einer neuen Instanz von VS 2010 starten

In Visual Studio 2013:

  1. Stellen Sie einen Haltepunkt in der .tt -Datei fest
  2. Klicken Sie mit der rechten Maustaste auf die .tt-Datei in den Lösungs-Explorer
  3. Wählen Sie "T4 -Vorlage debuggen"
  4. Fertig!

Keine zweite Instanz von Visual Studio benötigt.

Stellen Sie sicher, dass Sie die Debug -Option in der Vorlageanweisung einschalten:

<#@ template Language = "C#" Debug = "True"#>

Dadurch speichert T4 den Quellcode und die Symboldateien, die für das Debuggen in Visual Studio erforderlich sind.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top