我试图在 VS2012 中创建一个新项目,其中包含管理 MVC4 项目、网站 MVC4 项目和通用实体框架 dll 项目。
我使用了现有的数据库并从中生成了我的实体。我更新了一些关系属性的名称并保存。然后,我将对实体框架项目的引用添加到我的两个 MVC4 项目中,将实体框架连接字符串从 App.config 文件复制到每个 Web.config 文件,并确保我在中引用相同的 System.Data.Entity 程序集。所有 3 个项目。
我尝试使用实体框架添加 MVC 控制器并收到错误。该错误表明我的实体没有具有特定名称的属性。碰巧它所抱怨的名称是我在实体设计器中重命名的名称。所以我运行了 Clean Solution,重新构建,并尝试再次添加控制器......同样的错误。
由于它抱怨它没有具有某些名称的属性,因此我使用 ILSpy 检查生成的程序集。果然,它没有继承我在实体设计器中分配给属性的名称。下面是设计器界面的照片,显示我重命名了类(是的,我保存了它)、尝试添加 MVC 控制器时收到的错误消息,以及 ILSpy 输出显示属性在输出中未正确重命名集会。
这是一个错误吗?难道我做错了什么?
更新:当我更改 .edmx 设计时,.tt 文件似乎不会自动触发和重新生成实体。不确定保存 edmx 时需要做什么才能让它们自动运行?
有报告的错误 http://entityframework.codeplex.com/workitem/453当 EDMX 不在项目目录的根目录中时,这会导致此问题。当您将 EDMX 放入子文件夹时,您必须手动运行自定义工具来重新生成类。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)