所以我一直有这个非常讨厌的错误,过去几天我一直试图摆脱它......
我有一个 T4 模板,它在我正在构建的域特定语言 (DSL) 的调试解决方案中运行(假设它称为 MyDsl :P)。我有这个作为模板标题:
<#@ template inherits="Microsoft.VisualStudio.TextTemplating.VSHost.ModelingTextTransformation" #>
<#@ output extension=".txt" #>
<#@ MyDsl processor="MyDslDirectiveProcessor" requires="fileName='Sample.mydsl'" #>
该问题是由自定义指令引起的,该指令阻止模板生成,因为它“无法解析指令处理器 MyDslDirectiveProcessor 的类型”。当我删除自定义指令以尝试查看错误是否取决于其他内容时,我在第一个(模板)指令中收到错误,即命名空间 Microsoft.VisualStudio.TextTemplating.VSHost 中不存在 ModelingTextTransformation。
此调试解决方案中自动添加的模板也会发生这种情况,因为它们包含这些相同的代码行。
帮助表示赞赏:)
PS:我使用 Visual Studio 2012。另外,这里可能有类似的问题。