尽管脱离了 .NET Core 发布循环,但是 EF Core 正在开发其 3.0 路线图。除此之外,还对原来的 Entity Framework 进行了一些重要的变更。

更多服务器端的查询

将 LINQ 查询转换为对应的 SQL 查询通常是比较困难的,甚至是不可能的。许多 QRM 只能在转换失败时抛出一个运行时异常来解决这个问题,但是 EF Core 做了更多的尝试。当不能完全理解 LINQ 查询时,它会将其部分转换为 SQL,之后在客户端执行剩下的操作。尽管这可能会导致性能不好,很多开发人员更喜欢这种方案,而不是查询直接失败。

Diego B Vega写道,

在 EF Core 3.0 中,我们计划对 LINQ 实施和测试的方法进行重大变更。目标是让它变得更加健壮(比如说,避免在补丁发布版本中破坏查询),让更多表达式准确转换为 SQL,在更多情况下生成有效的查询,防止没有检测到效率低下的查询的情况发生。

C# 8.0 支持

EF Core 3.0 将成为第一个支持 C# 8 的版本。这主要代表着 API 在更新之后可以包含 [可为空的引用类型] 和异步流。关于如何做到这一点仍待确定,因为 EF Core 3.0 的一大目标是保留 .NET Standard 2.0 库。这可能会与 C# 8 的一些功能背道而驰。

因为 .NET Framework 不会支持 C# 8 的所有新功能,所以 Entity Framework 6.3 也不太见得可以支持 C# 8。

多对多关系

要在 EF Core 中表示多对多关系,目前你需要能表示映射表的“连接实体”。有了“属性包实体”功能之后,EF Core 离摆脱这种需求又更近了一步。

该特性支持实体将数据存储在索引属性中,而不是常规属性中,并且能够使用相同. NET 类的实例 (可能简单到 Dictionary<string, object>) 来表示相同 EF 核心模型中的不同实体类型。

请注意,Entity Framework 已经在不需要连接实体的情况下支持多对多关系。

存储过程

EF Core 3.0 timeframe 中不会提供对存储过程的一流支持。可以使用查询类型和原始 SQL 的变通方案。

Visual Studio Designer

Diego B Vega 写道:

我们了解设计可能是我们的一些客户使用 EF Core 的一个重要功能,但我们并没有看到很多反馈表示它比我们待办事项中的其他功能更加重要。我们很有兴趣了解你是否尝试代码优先开发,了解你是否知道有工具可以将现有的数据库反向工程到 EF Core 模型。

GraphQL

实现 GraphQL 是非常困难的。这个查询语言非常复杂,如果没有框架或者库来支持它,甚至是部分实现也很难做到。

几年以前 Microsoft 确实曾推出过使用 EF Core 的 GraphQL,但从来没有公开发布过。尽管还有很多 GraphQL 的设计问题需要得到解决,但他们还是希望能在未来真正实现这一功能。

原文地址:https://www.infoq.cn/article/yrNemH-ijJCIIdjMl4ep


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

Entity Framework 6.3 和 EF Core 3.0 路线图相关推荐

  1. ASP.NET Core 开发-Entity Framework (EF) Core 1.0 Database First

    ASP.NET Core 开发-Entity Framework Core 1.0 Database First,ASP.NET Core 1.0 EF Core操作数据库. Entity Frame ...

  2. java EF6,EF Core 2.0和EF6(Entity Framework 6)中配置实体映射关系

    1.EF6中通过EntityTypeConfiguration配置实体映射关系代码 public class AccountMap : EntityTypeConfiguration { public ...

  3. EF Core 2.0使用MsSql/Mysql实现DB First和Code First

    环境 Visual Studio 2017 最新版本的.NET Core 2.0 SDK 最新版本的 Windows PowerShell 开始搭建 1.在 Visual Studio 2017 中创 ...

  4. EF Core 2.1路线图:视图、GROUP BY和惰性加载

    Entity Framework Core一直追随着初始Entity Framework的发展,并不断推陈出新.它首先推出的是对视图的支持,这听起来有些耸人听闻.在即将推出的EF Core 2.1之前 ...

  5. EF Core 3.0查询

    随着.NET Core 3.0的发布,EF Core 3.0也随之正式发布,关于这一块最近一段时间也没太多去关注,陆续会去对比之前版本有什么变化没有,本节我们来看下两个查询. 分组 我们知道在EF C ...

  6. ABP Framework:移除 EF Core Migrations 项目,统一数据上下文

    原文:Unifying DbContexts for EF Core / Removing the EF Core Migrations Project[1] 导读:软件开发的一切都需要平衡 在 AB ...

  7. Entity Framework 学习中级篇—EF支持复杂类型的实现

    http://www.cnblogs.com/xray2005/archive/2009/06/01/1493661.html 本节,将介绍如何手动构造复杂类型(ComplexType)以及复杂类型的 ...

  8. MySql 使用 EF Core 2.0 CodeFirst、DbFirst、数据库迁移(Migration)介绍及示例

    dotnet core 2.0 发布已经好几天了,期间也把原来 dotnet core 1.1 的 MVC 项目升级到了 2.0,升级过程还是比较顺利的,变动也不是太多.升级的过程中也少不了 Enti ...

  9. migration mysql_MySql 使用 EF Core 2.0 CodeFirst、DbFirst、数据库迁移(Migration)介绍及示例...

    dotnet core 2.0 发布已经好几天了,期间也把原来 dotnet core 1.1 的 MVC 项目升级到了 2.0,升级过程还是比较顺利的,变动也不是太多.升级的过程中也少不了 Enti ...

最新文章

  1. linux 重新分区挂载,Linux:挂载磁盘分区,linux已挂载磁盘重新分区
  2. 从一个servlet转发到另一个servlet_javaweb02-创建第一个Servlet
  3. java求婚代码_屌丝程序员的求婚道具--内含视频
  4. 动态数据绑定之监听对象变化
  5. zabbix 监控 Esxi
  6. Java和SAP ABAP的异常处理
  7. 深度学习在美团的应用
  8. bypass最新版d盾mysql_Bypass D盾_IIS防火墙SQL注入防御(多姿势) | CN-SEC 中文网
  9. AWS想到办法让Alexa能在毫秒内做出回复
  10. IPVSADM+PIRANHA+KEEPALIVED集群
  11. iqooneo系统要不要更新_手机系统要不要升级?别纠结,1分钟看完你就知道
  12. GNSS精密星历读取(matlab)
  13. 夜天之书 #34 企业如何实践开源协同
  14. 数据风云、十年变迁(DTCC会议总结)
  15. 2019年物联网9个趋势和预测
  16. 回炉重造--数据库操作速成记
  17. 文旅展演专业委员会成功换届,为文旅展演导入新活力
  18. PDF文件怎么转换成Word?这几种方法原来这么简单
  19. 手机取证设备(手机点验设备、手机合规检测、双路并行手机取证深度分析系统、手机点验数据恢复)
  20. 无条件呼叫前转接已启用

热门文章

  1. [AHOI2009]飞行棋 BZOJ1800
  2. 【矩阵乘法】OpenJ_POJ - C17F - A Simple Math Problem
  3. LoadRunner+Android模所器实现抓包并调试本地服务端
  4. service zookeeper does not support chkconfig解决办法
  5. 【Linux学习009】脚本编程之变量、条件测试和条件判断
  6. 关于c/c++/obj-c的混合使用 (2010-06-22 10:05:33)
  7. WSUS专题之二:部署与规划1
  8. AspNet Core 6.0 Json写默认首字母小写(camelCase)问题
  9. C#对象映射器之Mapster
  10. 基于C#的计时管理器