区别:
1,ADO.Net是开发人员自己select、update等写sql语句,来实现对数据库的增删改查等操作;
采用EF进行开发操作数据库的时候,只需要操作对象,这样做使开发更方便,此时可以让开发人员使用C#的语法,来完成对数据库进行操作,完全的面向对象思想。
2,ADO.Net对内存消耗较小;而EF对内存消耗比较大,EF的性能不如ADO.Net.
3,代码的可读性。使用EF的代码的可读性更高。
联系:EF的底层是基于ADO.Net技术的。比如对数据操作的时候最终都是转化成SQL语句的。
EF框架和Ado.Net的使用比较
1、性能上(运行效率)
Ado.Net的性能更高些,直接使用SQLHelper的Command、Connection等命令通过写SQL语句对数据库进行操作。(EF的实体模型,性能上肯定要损失些!!)
2、方便性上(开发效率)
EF使用起来更方便,原因是开发人员不用关心如何访问数据库了。
3、适用性上
EF适合较大型的项目,数据量也较大些;而Ado.Net适用于小型项目(执行效率高些)。
4、灵活性上
Ado.Net灵活性更高,但可能存在sql注入的问题。
EF相对于ado.net 的优点
(1)开发效率高,开发人员完全可以根据面向对象的思维进行软件的开发
(2)可以使用三种设计模式中的ModelFirst来设计数据库,而且比较直观
(3)可以跨数据库,只需要在配置文件中修改连接字符串
(4)与vs结合的比较好