如何解决如何修复Entity Framework 4.1模型模板中丢失的类型/命名空间错误?
| 我有一个T4模板为支持我的.edmx
模型的实体生成C#类。模板以以下标题开头:
<#@ template language=\"C#\" debug=\"false\" hostspecific=\"true\"#>
<#@ include file=\"EF.Utility.CS.ttinclude\"#>
<#@ output extension=\".cs\"#>
尝试构建项目会导致这些错误
error CS0234: The type or namespace name \'Design\' does not exist in the namespace \'System.Data.Entity\'...
error CS0246: The type or namespace name \'EnvDTE\' Could not be found (are you missing a using directive...
error CS0234: The type or namespace name \'VisualStudio\' does not exist in the namespace \'Microsoft\'...
我怎样才能解决这个问题?
解决方法
事实证明,基于VS可扩展性线程,问题的原因是
Clarius Visual T4扩展。重置ѭ3中的该节点
归档到
<Compile Include=\"SomeModel.tt\">
<Generator>TextTemplatingFileGenerator</Generator>
<LastGenOutput>SomeModel.cs</LastGenOutput>
</Compile>
从
<None Include=\"SomeModel.tt\">
<Generator>TextTemplatingFileGenerator</Generator>
<LastGenOutput>SomeModel.cs</LastGenOutput>
</None>
解决方案是在“ 3”文件中手动将节点更改为“ 6”。改变它
通过Visual Studio属性编辑器返回的.tt
文件不起作用。
最后,禁用扩展名可以防止这种情况再次发生。
, 只需在.tt
文件的开头添加所需的程序集即可;像这样:
<#@ template language=\"C#\" debug=\"false\" hostspecific=\"true\"#>
<#@ assembly name=\"System.Data.Entity\" #>
<#@ assembly name=\"System.Data.Entity.Design\" #>
...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。