我最近编辑了一个模型,并为我的项目添加了一些新模型。我在控制台和升级后的数据库中键入了“add-migration sth”。 现在,当我想通过我的MVC站点连接到db时,我收到此错误:
当前模型不再匹配用于预生成映射视图的模型,如ViewsForBaseEntitySets8f8ed3558b66b3b0b5bd7e2867696566a8a1964469dfa075926133c040704be5.MappingHashValue属性所示。必须使用当前模型重新生成预生成的映射视图,或者如果应使用在运行时生成的映射视图,则必须将其删除。有关Entity Framework映射视图的更多信息,请参阅http://go.microsoft.com/fwlink/?LinkId=318050。
我发现信息可能是blame of old EF installed,但我认为我有最新的信息:
<package id="EntityFramework" version="6.1.2" targetFramework="net45" />
怎么了?如何解决?
答案 0 :(得分:7)
我看到其他人也有同样的问题。
此处描述了解决方案: https://msdn.microsoft.com/en-us/data/dn469601.aspx
您需要做的就是右键单击您使用DbContext课程的文件,从下拉菜单中选择“实体框架”,然后单击“生成视图”。
原因是:“视图”文件不适合模型,所以你必须使用我在这里提到的选项再次生成它。
<强>更新强> 以上解决方案需要EF Power Tools,遗憾的是,Visual Studio 2015不支持。最后正式,因为无论如何都可以安装它,具体如下:http://thedatafarm.com/data-access/installing-ef-power-tools-into-vs2015/
如果链接不起作用:
*.vsix
。将其手动更改为*.zip
extension.vsixmanifest
14.0
中添加<SupportedProducts>
版本(与其他现有版本相同)
*.vsix
文件现在我不知道其他任何简单的方法。