【问题标题】:MVC scaffolding does not support Entity Framework 6 [duplicate]MVC 脚手架不支持实体框架 6 [重复]
【发布时间】:2014-01-21 09:35:25
【问题描述】:

我正在尝试使用实体框架添加具有读/写操作和视图的控制器。

但是当我尝试这样做时,VS2012 告诉我“MVC 脚手架不支持实体框架 6 或更高版本”。 我已阅读 http://support.microsoft.com/kb/2816241 并尝试卸载 EntityFramework 6 并在 Nuget Manager 控制台中安装 5:

PM> 卸载包EntityFramework -force 从 OnlinebookingAdministrator 中删除“EntityFramework 6.0.2”。 已成功从 OnlinebookingAdministrator 中删除“EntityFramework 6.0.2”。 卸载“EntityFramework 6.0.2”。 已成功卸载“EntityFramework 6.0.2”。

PM> 安装包 EntityFramework -version 5.0.0 'EntityFramework 5.0.0' 已安装。 将“EntityFramework 5.0.0”添加到 OnlinebookingAdministrator。 已成功将“EntityFramework 5.0.0”添加到 OnlinebookingAdministrator。

但是当我尝试添加控制器时,错误不断出现。有解决办法吗?

【问题讨论】:

  • 是否更新了 we.config 文件以反映您使用的是 ef 5 而不是 ef 6?
  • 这已经完成,但最初没有工作。但是我重新启动了 VS,需要在 Web.Config 中手动将 defaultConnectionFactory->Providers 更改为 defaultConnectionFactory->contexts。现在它起作用了。谢谢
  • 这已经被问及解决了 - stackoverflow.com/questions/19165410/…

标签: asp.net-mvc entity-framework-6


【解决方案1】:

恐怕我对你的问题没有完美的解决方案,但我认为我有一个相当不错的解决方法:

我最近对默认的 MVC Scaffold-er 有很多争论,我建议通过 NuGet 安装 MVCScaffolding 并使用控制台来创建您需要的任何东西。

修复步骤:

  1. 使用 NuGet 安装 MVCScaffolding

    PM> Install-Package MvcScaffolding
    
  2. 通过包管理器控制台运行以下命令,将 ModelName 替换为您希望为其生成控制器/视图的模型的名称。

    PM> Scaffold Controller ModelName
    
  3. 了解基本的 MVCScaffolding 命令

    MvcScaffolding: Standard Usage

【讨论】:

    【解决方案2】:

    你试过http://go.microsoft.com/fwlink/?LinkId=276833吗?

    您必须手动搭建视图或使用 Entity Framework 5 搭建脚手架。构建应用程序后,您可以使用 Entity Framework 6。

    注意这是一篇直接在 Microsoft 支持组织内创建的“快速发布”文章。此处包含的信息按原样提供,以应对新出现的问题。由于提供速度较快,这些材料可能包含印刷错误,并且可能随时修改,恕不另行通知。有关其他注意事项,请参阅使用条款。

    【讨论】:

    • 链接不再有效
    猜你喜欢
    • 2013-12-04
    • 1970-01-01
    • 2013-10-10
    • 2011-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-09
    • 1970-01-01
    相关资源
    最近更新 更多