【发布时间】:2011-11-10 11:33:13
【问题描述】:
如here 所述,我已覆盖控制器生成 T4 模板 (ControllerWithContext.tt)。
我想利用在 POCO 模型生成器 T4 模板中使用的 EF.utility.CS.ttinclude 中的代码帮助实用程序。因此,我将以下几行从我的Model.tt 复制到我的ControllerWithContext.tt。
<#@ include file="EF.Utility.CS.ttinclude"#>
但是,当我尝试添加控制器时,我收到了错误消息
加载包含文件 'EF.utility.CS.ttinclude' 返回 null 或空字符串
根据MSDN documentation,这个错误是因为包含的文件是空白的,这显然不是因为它适用于Model.tt
我能看到的唯一区别是被覆盖的ControllerWithContext.tt 没有定义自定义工具,而Model.tt 将其设置为TextTemplatingFileGenerator。
我的解决方法是将我需要的函数从ef.utility.cs.ttinclude 复制到我的ControllerWithContext.tt 中,这本身会引发更多错误,但很容易解决。
如何在未定义自定义工具的情况下包含 T4 模板?
【问题讨论】:
标签: c# visual-studio-2010 t4