Entity Framework是微软借鉴ORM思想开发自己的一个ORM框架。
ORM就是将数据库表与实体对象(相当于三层中的Model类)相互映射的一种思想。
最大的优点就是非常方便的跨数据库平台。因为该技术不需要知道用的是什么数据库,这也是.net中Linq能To任何对象的原因。
这门技术为什么可以跨平台呢?是因为它只需要修改一下config文件就可以了,只要指定连接字符串,驱动程序,就可以根据不同数据库生成不同的Sql语句,当你的项目用户用到不同的数据库时,就不需要像修改SQL语句了。
Entity Framwork本质还是ADO.NET操作,只是它将ADO.NET封装的更加高级了而已。
学习Entity Framwork还是需要对linq var lambda表达式要比较熟悉了
好了不扯远了。Entity Framwork框架会颠覆我们传统书写ADO.NET的写法。一开始可能会有些不适应!适应后~~~~开发实在是太爽了
1>使用Entity Framwork第一步呢是创建一个实体对象模型,在添加新项里面
2>然后选择从数据库生成实体。这里的空模型是可以通过先建模然后根据模型建数据库的,他们之间可以相互映射,这也是ORM的思想
后面的设置看着设置就好了~~~太简单了~傻瓜式的~微软开发就是NB,把用户都当SB来看待
在这个选择表的时候可以选择需要映射的表,选择了,就会根据表创建实体类。还有存储过程,视图,等都可以映射
设置好后会生成一个edmx的文件
展开后可以看到
好吧~准备工作做好了~现在开始第一个操作~查询
1.查询
这就完了。方便快速吧~还有朋友说EF框架性能问题~其实也就多了一个生成Sql语句的过程~相对于三层~如果几万人访问的项目随便用。不用担心,生成sql语句是非常快的~数据库方面和自己写的ADO.NET没什么太大的区别
2. 修改----这里修改的观念和我们用三层的观念差不多~先将数据查出来~然后在对变化的值进行重新赋值,然后更新,案例我是用winform做的。
至于删除,更新就更加简单了,只要通过修改状态就可以了,最后也是 上下文调用savechanges方法保持就可以了。
好吧,简单分享就到这里了。虽然感觉有如此NB的技术,但是建议还是先将基础学好~不要一开始就学高级技术~到头来只知其然不知所以然~也欢迎大家的评论于指导