0

我正在使用大约 6 个月前最后一次使用的现有 T4 模板,但我不知道有任何变化。但是,当我保存模板文件时,我没有收到以下异常:

初始化转换对象时产生错误。转换将不会运行。引发了以下异常:System.IO.FileNotFoundException:无法加载文件或程序集“T4Toolbox,版本=11.0.0.0,文化=中性,PublicKeyToken=dc4a538672a7b38f”或其依赖项之一。该系统找不到指定的文件。文件名:' T4Toolbox,版本=11.0.0.0,文化=中性,PublicKeyToken=dc4a538672a7b38f'

服务器堆栈跟踪:在 System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) ...

我的 tt 文件的标题是:

<#@ template language="C#" debug="True" #>
<#@ output extension="cs" #>
<#@ include file="T4Toolbox.tt" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.IO" #>
<#@ assembly name="System.Xml"#>
<#@ assembly name="System.Linq"#>
<#@ assembly name="$(TargetPath)" #>
<#@ import namespace="System.Xml" #>
<#@ import namespace="System.Diagnostics" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Collections.ObjectModel" #>
<#@ import namespace="MyNamespace" #>
<#@ parameter name="className" type="System.String" #>

我检查了工具 > 扩展和更新,并安装了 11.8.0.0 版。

还有什么我可以检查的吗?

4

1 回答 1

0

好的,所以我发现了发生了什么。T4 Toolbox 似乎对通过 Visual Studio 安装 T4 Toolbox Extension 的帐户很敏感。

在我们的开发环境中,我们使用两个用户帐户进行开发,一个具有提升权限。似乎 T4 Toolbox Extension 是使用一个帐户安装的,而我试图将它与另一个帐户一起使用。

因此,对于遇到此问题的任何其他人,请确保使用正确的帐户安装扩展程序,因为即使显示为正确安装,扩展程序也无法跨多个帐户工作。

或者像我一样做并卸载它。然后使用所需的帐户安装它。

于 2015-05-18T14:43:10.570 回答