Ich bin ein T4 Neuling versucht T4 Toolbox zu verwenden, um F # Code basierend auf this answer zu generieren, aber es scheint, dass Klasse Feature-Blöcke nicht mit Anweisungsblöcke gemischt werden können. Hier ist mein Code:T4 Toolbox - Mischen Klasse Feature und Anweisung Blöcke
<#@ template language="C#" hostspecific="True" debug="True" #>
<#@ output extension="txt" #>
<#@ include file="T4Toolbox.tt" #>
<#
FSharpTemplate template = new FSharpTemplate();
template.Output.Project = @"..\Library1\Library1.fsproj";
template.Output.File = "Module2.fs";
template.Render();
#>
<#+
class FSharpTemplate: Template
{
public override string TransformText()
{
#>
module Module2
<# for (int i = 0; i < 10; i++) { #>
<#= i #>
<# } #>
<#+
return this.GenerationEnvironment.ToString();
}
}
#>
Und ich bekomme diese Fehlermeldung:
A Statement cannot appear after the first class feature in the template. Only boilerplate, expressions and other class features are allowed after the first class feature block.
So ... wie kann ich die Vorlage umschreiben dies zu erreichen?
Wenn ich tun, dass ich keine Ausgabe an allen –
bekommen wie ich sehe. Ich verstehe nicht wirklich, wie die Antwort in der anderen Frage funktionieren sollte, aber ich kann Ihnen sagen, dass dies eine Regel für T4 ist. Ich würde empfehlen, einen Link zu der generierten Datei im anderen Projekt hinzuzufügen. – erikkallen