我在使用T4创建最基本的Assembly Information
时遇到问题-有人可以帮我吗?
我只希望下面的代码手动生成一个版本号,这样我可以看到它可以工作,但是编译后的.cs
文件没有应有的信息。
代码如下:
<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ output extension=".cs" #>
<#
int major = 5;
int minor = 0;
int build = 0;
int revisions = 0;
// TODO: Write code here to automatically generate a version
string version = String.Format("{0}.{1}.{2}.{3}",
major,
minor,
build,
revisions);
#>
// This code was generated by a tool. Any changes made manually will be lost
// the next time this code is regenerated.
using System.Reflection;
[assembly: AssemblyVersion("<#= version #>")]
[assembly: AssemblyFileVersion("<#= version #>")]
这是预期的结果:
using System.Reflection;
[assembly: AssemblyVersion("5.0.0.0")]
[assembly: AssemblyFileVersion("5.0.0.0")]
这是actual result-上面没有任何汇编代码。
这类似于我已经审查过的几个问题:this,this和this,但是即使遵循它们的特定用例,我也无法提出具有我期望的AssemblyVersion和AssemblyFileVersion属性的.cs文件
答案 0 :(得分:1)
从输出中看,您似乎已将.tt文件配置为runtime file generator而不是设计时间生成器。
检查文件的自定义工具属性。它应该是 TextTemplateFileGenerator ,而不是 TextTemplatingFilePreprocessor :