将实体框架 7 添加到 MVC 5 项目

本文关键字:MVC 项目 添加 实体 框架 | 更新日期: 2023-09-27 18:31:21

我正在创建一个新的MVC 5网站,我可以将实体框架6.1用于我的SQL Server数据库。该项目将托管在 Azure 中,部分数据将托管到表存储。我已经看到在实体框架 7 中,我可以使用 Azure 表存储创建 DbContext,并且我想使用它。我有Visual Studio 2015预览版,并且我已经设法在ASPNET 5 MVC 6应用程序上安装了EF7。但是我无法让它与 MVC 5 一起工作,有什么想法可以做到这一点吗?

谢谢!

将实体框架 7 添加到 MVC 5 项目

EF7 是在 K 运行时环境中构建的(如 MVC6,即 VS2015 仅在 mo),因此它与 MVC5 不兼容,没有办法绕过这一点。

免责声明:剩下的就是我的意见

我在 MVC6 项目中尝试了 EF7 Azure 表存储 (ATS) 扩展,不仅性能不相上下(现在可能已经修复了这个问题),而且您在 EF 中习惯的大量功能不可用,因为它们不可能。 EF 非常适合关系数据库,我喜欢它,但试图将 ATS 视为关系数据库只会给您带来麻烦。

它从开发人员那里抽象出重要的知识,如果你要开发高性能和可扩展的系统,你需要这些知识。

ATS 一次只能保证对单个分区的事务,而不是跨分区,我不确定 EF(您可以在其中修改多个分区中的实体)如何处理这个问题。

EF7 不允许跨多个存储帐户跨上下文,如果开始达到分区/实体限制(每个帐户 20,000/秒,每个分区 2000/秒),这将是一个大问题。

EF7 不允许在单个表中使用多个实体类型,也不允许解析为不同的 DTO,因此必须在内存中执行该映射。

测试后不久,我又回到了仅使用 azure 存储客户端,我认为我不会再尝试了。存储客户端专门设计用于以开发 ATS 的方式使用。 尽管我仍然期待在准备好时将 EF7 与 SQL 一起使用。