t4 "VisualStudioHelper" not found
本文关键字:quot found not VisualStudioHelper t4 | 更新日期: 2023-09-27 18:22:33
我正在尝试从VS2012项目中生成代码,但我无法使这段t4代码在中工作
var project = VisualStudioHelper.CurrentProject;
因为找不到VisualStudioHelper。
为了使VisualStudioHelper可用,我应该在t4中安装/包括什么?
VisualStudioHelper是来自Tangible T4 Editor的自定义类。
为了使用这个类,请为您的Visual Studio安装Tangible T4编辑器,然后:
- 在Visual Studio中打开"有形T4"菜单,然后单击"模板库"
- 单击左下角的"立即更新"图标
- 从目录树中选择:Tangible>Visual Studio CodeModel
- 在"文件"菜单中,用鼠标右键单击"遍历Visual Studio代码模型",然后选择"添加到解决方案…"
- 选择"Microsoft.VisualStudio.Helper.ttinclude"
- 在您的.tt文件中,请参考VisualStudioHelper,如下所示:
<#@ include file="VisualStudioHelper.ttinclude" #>
什么是VisualStudioHelper
?这似乎是一个自定义的东西,而不是T4模板引擎中内置的东西。如果你需要访问当前项目,你可以试试这个:
var dte = (EnvDTE.DTE)((IServiceProvider)Host).GetService(typeof(EnvDTE.DTE));
var project = dte.Solution.FindProjectItem(Host.TemplateFile).ContainingProject;
不要忘记导入T4模板顶部的程序集:
<#@ assembly name="EnvDTE" #>
我从有形的T4编辑器了解VisualStudioHelper
。它是免费的,并附带一个模板库,提供有用的T4模板,您可以将其包含在您的模板中,例如用于访问Visual Studio功能或项目配置等。
也许你应该看看那里。
编辑:您应该在库中查找的模板名为";有形的Visual Studio Automation Helper";