EF6基础系列(一)---什么是Entity Framework

什么是Entity Framework

1.EF的概念

在.NET3.5之前,我们经常编写ADO.NET代码或企业数据访问块来保存或检索底层数据库中的数据。做法是:打开过一个数据库的连接,创建一个DataSet来获取或提交数据到数据库,通过将DataSet中的数据和.NET对象相互转换来满足业务需求。这是一个麻烦且容易出错的过程Microsoft提供了“Entity Framework”框架,用于自动地执行所有上述与数据库相关的活动。
EF是一个适用于.NET开发的开源ORM框架。它使开发人员能够通过领域对象来处理数据,而无需关注存储此数据的基础数据库。使用实体框架,开发人员在处理数据时可以在更高的抽象级别上工作,并且与传统应用程序相比,可以使用更少的代码创建和维护面向数据的应用程序。
官方定义:“实体框架是一种对象关系映射器(O/RM),它使.NET开发人员能够通过.NET对象来操作数据库。它消除了开发人员通常需要编写的大多数数据访问代码的需求。“

实体框架工作在业务实体(域类)和数据库之间。它保存实体属性中的数据到数据库,也可以从数据库中检索数据并自动将其转换为实体对象。
技术分享图片

2.EF功能总结

这里简单地总结EF的特性,以后详细总结

1.跨平台   EF Core是一个跨平台的框架,可以在Windows,Linux和Mac上运行。
2.建模     EF可以创建具有不同数据类型get / set属性的EDM(Entity Data Model/实体数据模型)。它使用此模型查询或保存底层数据库的数据。
3.查询     EF允许我们使用LINQ从底层数据库中检索数据,同时也支持直接对数据库执行原始SQL查询。
4.更改跟踪  EF会跟踪需要提交到数据库的实体实例(属性值)发生的更改。
5.保存     EF调用SaveChanges()方法时,根据实体发生的更改,对数据库执行INSERT,UPDATE和DELETE命令。EF还提供了异步的SaveChangesAsync()方法。
6.并发     默认情况下,从数据是从数据库中提取开始,EF使用乐观并发来避免我们做的修改被其他用户覆盖。
7.事务     EF在查询或保存数据时自动执行事务管理。它还提供自定义事务管理的选项。
8.缓存     EF包括开箱即用的第一级缓存。因此,重复查询将从缓存中返回数据,而不是访问数据库。
9.配置     EF允许我们使用注释属性配置EF模型,也可以使用Fluent API来覆盖默认约定。
10.迁移    EF提供了一组迁移命令,我们可以在NuGet Package Manager控制台或命令行界面中执行这些命令来创建或管理底层数据库计划。

 

文章来自:https://www.cnblogs.com/wyy1234/p/9625583.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3