EF,到目前为止,只是在别人建立好的基础上见过用过它,即:每次更新了数据库,都需要更新程序中的实体模型。而事实上,对于它,自己并不是特别了解。所以,通过这一次的学习,对它的认识算是前进了不少。

   【温故】

   又是一个新的英文单词组合,EF,在正式介绍它之前,还是先对之前的专业词汇进行一下简单地回顾。

         .NET            最核心的基础平台(可以看做运行环境和巨多类库),仅次于操作系统。    

         ASP.NET      .NET平台内开发的Web技术。

         ADO.NET   .NET平台内访问数据库的技术。

    MVC           网页开发的一种框架,与具体平台或者语言关系不大

   【知新】

        EF,全称Entity Framework(实体框架)。它是ADO.NET中的一组支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架。

   自然而然,又有了一个疑问,ORM又是什么?

       ORM,全称ObjectRelational Mapping(对象关系映射)。它是把数据库映射为实体类的一个技术。

   好像这些文字上的东西,看一个觉得都一样,傻傻分不清楚。那么,还是用一张图来看看EF的体系结构啦。

   【结构】

· EF,更好地管理

    一张图,也让我们很清楚的看到了更多东西间的关系。用最简单的语言总结便是:

EF是在ADO.NET平台下发展而来的解决与数据库的交互技术,而对于EF框架的实现,用到的技术便是ORM

   【缘由】

    在了解EFORM技术的原理之前,不妨先思考一个“为什么”的问题。也就是说,为什么会有EFORM这样的技术出现,它们能带来什么好处吗?又或者说,之前采用的应用程序与数据库交互的方式有着什么不足吗?下面我们一一来解答。


         EF技术,它解决了对象持久化的问题,将程序员从编写麻烦的SQL语句中解放出来。

    优点:

支持多种数据库(SQL ServerOracle等);

提供Visual Studio集成工具,支持可视化操作;

能够与ASP.NETWCF进行很好的集成。 


         ORM技术,它是框架的一个总称。它使程序员既能够利用面向对象语言的简单性,又能够利用关系数据库的技术优势来实现应用程序的增删改查操作。

    优点:

面向对象,不用SQL直接编码,就像操作对象一样操作数据库;

提高开发效率,ORM可以自动对实体对象与数据库中Table进行字段与属性的映射,不需要单独的数据访问层。

方便转移,当数据库发生变化时,不需要对模型进行改动,只需要修改映射关系。

   然而,ORM技术并不是完美无缺的。

    缺点:

会牺牲程序的执行效率;

复杂的ORM低于SQL语句。

所以,这也就决定了ORM技术有着一定的使用场合:

 1、ORM使我们摆脱了SQL,但并不代表我们不再使用SQL,事实上,复杂的查询和报表仍推荐使用SQL,良好的系统应该可以兼容以前的方式;

 2ORM更适合复杂的系统(这里使用复杂,而不是大型),因为这样的系统要求建造速度快,系统稳定,他们的业务规则异常的复杂,但他们对系统的性能要求并不高

 3、开发时间紧迫时

 4、有数据库迁移需求时

   【总结】

    在这些理论学习之前,对EF并不是特别了解,只是知道以后一定会用到。至于为什么,并不是很清楚。通过这一次理论知识的学习,了解到EF是与数据库一一映射的关系,这就大大方便了对数据库的管理。通过EF,我们不需要从数据库中对数据进行变更,不再需要使用大量复杂的SQL语句。

    现在欠缺的是自己的实践。

相关文章:

  • 2022-01-06
  • 2021-12-23
  • 2021-08-22
  • 2022-01-06
  • 2021-05-25
  • 2022-12-23
  • 2021-12-15
猜你喜欢
  • 2022-12-23
  • 2021-08-15
  • 2021-12-20
  • 2023-01-06
  • 2021-09-21
  • 2022-01-10
  • 2021-06-05
相关资源
相似解决方案