我试图通过T4生成一些代码,当我包含<#@ template language =“VBv3.5”#>时,我收到以下错误我的模板中的指令。
vbc:命令行(0,0):错误BC2006:Compinling transformation:选项'r'需要':( file_list)
如果我使用<#@ template language =“C#v3.5”#>作为我的指示它工作得很好。此外,如果我不尝试生成通过代码并只保存.tt文件,它可以正常使用VBv3.5指令。
这是我的t4模板。
<#@ output extension="txt" #>
<#@ assembly name="Microsoft.SqlServer.ConnectionInfo" #>
<#@ assembly name="Microsoft.SqlServer.Smo" #>
<#@ assembly name="System.Configuration" #>
<#@ assembly name="Microsoft.VisualBasic" #>
hello world
这是我的.NET代码
Dim host As CustomCmdLineHost = New CustomCmdLineHost()
Dim engine As Engine = New Engine()
host.TemplateFileValue = sTemplateFile
'Read the text template.
Dim input As String = File.ReadAllText(sTemplateFile)
'Transform the text template.
Dim output As String = engine.ProcessTemplate(input, host)
答案 0 :(得分:0)
这适用于标准T4主机(在Visual Studio和TextTransform中)。根据错误,您的自定义主机似乎无法正确提供程序集引用列表。