Entity Framework 6Entity Framework 6

    作为 O/RM,EF6 降低了关系方面和面向对象的方面之间的阻抗不匹配,使开发人员能够使用表示应用程序域的强类型 .NET 对象来编写应用程序,该应用程序可与存储在关系数据库中的数据交互,同时使开发人员无需再编写大部分的数据访问“管道”代码。

    • 不依赖于任何 EF 类型的 实体类的映射
    • 自动更改跟踪
    • 预先、延迟和显式加载
    • 使用 LINQ(语言集成查询)转换强类型查询
    • 丰富的映射功能,可支持:
      • 一对一、一对多和多对多关系
      • 继承(每个层次结构一张表、每个类型一张表和每个具体类一张表)
      • 存储过程
    • 通过可视化设计器创建实体模型。
    • 通过编写代码创建实体模型的“Code First”体验。
    • 既可从现有数据库生成模型,然后手动编辑,也可从头开始创建模型,然后用于生成新的数据库。
    • 与 .NET Framework 应用程序模型(包括 ASP.NET)集成,并通过数据绑定与 WPF 和 WinForms 集成。

    EF Core 是更现代、可扩展的轻量级实体框架版本,与 EF6 的功能和优点非常相似。 EF Core 则完全进行了重写,包含许多 EF6 没有的新功能,但还是缺少 EF6 中最高级的一些映射功能。 如果功能集与需求匹配,请考虑在新应用程序中使用 EF Core。 中更详细地讨论了此选项。

    本文档针对的是最新版本的实体框架 6 ,但其中大部分内容也适用于过去的版本。 请查看新增功能和,了解 EF 版本和其中引入的功能的完整列表。