2017-07-03 1 views
0

Ich habe eine T4-Vorlage, die eine Klasse generiert, die zur Laufzeit verwendet werden kann, um ein Dokument zu erstellen. In den Eigenschaften der Vorlagendatei ist das benutzerdefinierte Tool auf "TextTemplatingFilePreprocessor" festgelegt, und ich habe auch einen benutzerdefinierten Namespace für die Namespaceeigenschaft des benutzerdefinierten Tools festgelegt.Wie kann ich eine T4-Vorlage automatisch mit jedem Build erstellen, während ein Namespace angegeben wird?

Wenn ich mit der rechten Maustaste auf die Vorlage klicke und "Custom Tool ausführen" wähle, oder wenn ich Build-> Transform All T4 Templates wähle, wird der Code korrekt generiert. Ich habe jedoch versucht, die Vorlage so zu generieren, dass sie beim Erstellen automatisch generiert wird, indem die Build-Aufgabe Microsoft.TextTemplating.targets wie hier beschrieben verwendet wird: https://docs.microsoft.com/en-us/visualstudio/modeling/design-time-code-generation-by-using-t4-text-templates#Regenerating. Wenn ich das tue, wird die Datei neu generiert, aber es ignoriert den benutzerdefinierten Tool-Namespace.

Also: Wie kann ich eine T4-Vorlage automatisch mit jedem Build erstellen, während Sie einen Namespace angeben?

Antwort

0

Schließlich herausgefunden: die Lösung ist das Ersetzen des Tags in der csproj-Datei durch ein Tag.

+0

Hallo, ich habe genau das gleiche Problem. Kannst du es ausarbeiten? Welches Tag haben Sie ersetzt? –

Verwandte Themen