在同一解决方案中参考项目组装,对构建进行T4转换

时间:2013-12-10 22:14:07

标签: visual-studio msbuild visual-studio-2013 t4

当我在visual studio中运行时,我能够让我的T4文件正常工作,但在构建过程中自动执行它时会出错。

问题是,为了引用同一解决方案中的程序集而另一个项目,我添加了这一行:

<#@ assembly name="$(SolutionDir)\My.Core\bin\Debug\My.Core.dll" #>

为了在构建时运行单个T4模板,我使用以下命令创建了一个post-build事件:

"%PROGRAMFILES(x86)%\Common Files\microsoft shared\TextTemplating\10.0\TextTransform.exe" $(ProjectDir)\Features\Admin\app\Abilities.tt

但是由于此时主机不是IDE环境,因此它会抛出一个错误,因为它正在逐字处理$(SolutionDir),因此无法找到My.Core.dll的程序集引用。

所以我的问题是,如何在T4模板中引用该程序集,以便它与我拥有的构建过程一起工作,理想情况下仍然可以右键单击并手动运行转换,但这并不重要。

我还应该注意,使用完整路径不是一个选项,因为有多个开发人员,源代码将存在于每个开发人员计算机上可能不同的目录中。

0 个答案:

没有答案