社区
C#
帖子详情
和传统的ADO.NET相比,EF(Entity Framework)如何?
ximomomoxinei33
2012-03-05 09:32:39
请教坛子里的高手,现有的OA系统是三层构架 DAL BLL UI Models Common
对数据库操作基本都是sql语句(写在DAL层中),
现打算改成EF方式去重写,希望高手说说是否可行,以及两者的优缺点对比。
还有个问题,现在系统是winform模式,听领导提到以后可能会改成asp.net版本。会加入一层web服务,希望做过web服务相关项目的高手谈一谈自己的理解,多谢了!!!!
...全文
4774
21
打赏
收藏
和传统的ADO.NET相比,EF(Entity Framework)如何?
请教坛子里的高手,现有的OA系统是三层构架 DAL BLL UI Models Common 对数据库操作基本都是sql语句(写在DAL层中), 现打算改成EF方式去重写,希望高手说说是否可行,以及两者的优缺点对比。 还有个问题,现在系统是winform模式,听领导提到以后可能会改成asp.net版本。会加入一层web服务,希望做过web服务相关项目的高手谈一谈自己的理解,多谢了!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
21 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ximomomoxinei39
2012-03-13
打赏
举报
回复
顶哈!!高手谈谈心得!!
cjh200102
2012-03-12
打赏
举报
回复
各自都有方便之处,关键是看项目选择了
ximomomoxinei39
2012-03-12
打赏
举报
回复
[Quote=引用 18 楼 nonocast 的回复:]
引用 13 楼 ximomomoxinei39 的回复:
OMG 这个话题木人气啊? 不应该呀?
月经贴
[/Quote]
C#和java哪个更好呢?
ximomomoxinei39
2012-03-09
打赏
举报
回复
[Quote=引用 11 楼 lokily 的回复:]
曾经评估过EF的应用,当时微软还没有正式推出它,但最终放弃了。不是说它不好,它只是使对数据库的编码更符合面向对象的编程的方式,这中ORM技术是在提高开发效率,并不是提高运行效率,或者说是对多数据库的支持要比手工SQL对多数据库的支持要方便一些,但不是绝对,在我们的某个项目上,后来采用了NHibernate,基于组员对Hibernate的熟悉程度,更方便接受一些。简单理解就是,采用ORM的方式,对……
[/Quote]
看来 EF想优化确实没有SQL语句直接操控来的容易!
nonocast
2012-03-09
打赏
举报
回复
[Quote=引用 13 楼 ximomomoxinei39 的回复:]
OMG 这个话题木人气啊? 不应该呀?
[/Quote]
月经贴
qiume
2012-03-09
打赏
举报
回复
封装和原生......
欢乐的小猪
2012-03-09
打赏
举报
回复
EF用起来真的太简单方便了,建好相应的类就自动创建数据库
ximomomoxinei39
2012-03-08
打赏
举报
回复
OMG 这个话题木人气啊? 不应该呀?
知擎物联
2012-03-08
打赏
举报
回复
[Quote=引用 11 楼 lokily 的回复:]
曾经评估过EF的应用,当时微软还没有正式推出它,但最终放弃了。不是说它不好,它只是使对数据库的编码更符合面向对象的编程的方式,这中ORM技术是在提高开发效率,并不是提高运行效率,或者说是对多数据库的支持要比手工SQL对多数据库的支持要方便一些,但不是绝对,在我们的某个项目上,后来采用了NHibernate,基于组员对Hibernate的熟悉程度,更方便接受一些。简单理解就是,采用ORM的方式,对于……
[/Quote]
本来还想学习下的,看了下,确实不是特别大的项目用了没意义啊。
ximomomoxinei33
2012-03-07
打赏
举报
回复
[Quote=引用 11 楼 lokily 的回复:]
曾经评估过EF的应用,当时微软还没有正式推出它,但最终放弃了。不是说它不好,它只是使对数据库的编码更符合面向对象的编程的方式,这中ORM技术是在提高开发效率,并不是提高运行效率,或者说是对多数据库的支持要比手工SQL对多数据库的支持要方便一些,但不是绝对,在我们的某个项目上,后来采用了NHibernate,基于组员对Hibernate的熟悉程度,更方便接受一些。简单理解就是,采用ORM的方式,对……
[/Quote]
说的挺细 顶了!!!
lokily
2012-03-06
打赏
举报
回复
曾经评估过EF的应用,当时微软还没有正式推出它,但最终放弃了。不是说它不好,它只是使对数据库的编码更符合面向对象的编程的方式,这中ORM技术是在提高开发效率,并不是提高运行效率,或者说是对多数据库的支持要比手工SQL对多数据库的支持要方便一些,但不是绝对,在我们的某个项目上,后来采用了NHibernate,基于组员对Hibernate的熟悉程度,更方便接受一些。简单理解就是,采用ORM的方式,对于普通的CRUD操作,可以视同隔离了SQL语句,对于不熟悉多种SQL的开发人员来说,是比较惬意的事情,如果项目本身不大,且没有多数据库支持,对orm的使用其实也就那么回事了。还有就是,如果后期维护中,涉及到SQL优化的时候,又偏偏涉及到SQL 语句拼写的优化时,手工SQL反而更好调整,因为在ORM下的SQL是框架生成的,要想改sql,得改程序,这动静就不小了而且危险性要大了,当然,也可以让ORM直接执行原生SQL,但还是要改程序。还有一点,数据库结构的变化,导致EF Entity 的变化,也比较麻烦,有人说,数据库结构还能总变?这个。。。还真的总会碰到的
ximomomoxinei33
2012-03-06
打赏
举报
回复
继续等答案!用过的朋友讲讲啊
小茶杯
2012-03-05
打赏
举报
回复
EF要是做大项目的话还行。。。他的处理数据比较相对。。。处理100条数据和处理1000条数据速度差不多的。。
数据巨量小的话。还是不适合用的。。但是大部分好想用EF的话都是ORACLE。。
mizuho_2006
2012-03-05
打赏
举报
回复
EF挺好用的,但如果是ORACLE数据库需要下插件才支持。LINQ to Sql也是只支持Sqlserver。也可以选NHibernate,大型项目中用的比较多,比较流行的ORM模型。
cnwin
2012-03-05
打赏
举报
回复
是啊,实体模型性能上肯定要损失些。当然也带来了一些便利,比如不必关心如何访问数据库了。
nonocast
2012-03-05
打赏
举报
回复
关键是方便
小茶杯
2012-03-05
打赏
举报
回复
实体模型感觉。。处理数据慢一些,但是使用方便。。SQL快。。。
把最好的留到最后
2012-03-05
打赏
举报
回复
我是菜鸟,按照我的理解,三层架构低耦合,那么你换UI,就是换把原来的winform换成web,SQL写好了继续用,改改多麻烦,winform也留着。
ximomomoxinei39
2012-03-05
打赏
举报
回复
顶了 希望高手继续回答!
net_friends
2012-03-05
打赏
举报
回复
如果希望用.net 开放数据访问层,那么你可以查查看 ADO.NET Data Service
直接使用 WCF 开放 OData 数据协议。
http://blog.csdn.net/fangxinggood/article/details/6378106
加载更多回复(1)
ADO.NET
sql、LINQ to sql、
ADO.NET
Entity
Framework
(
EF
)数据库连接性能比较
数据
ADO.NET
sql、LINQ to sql、
ADO.NET
Entity
Framework
(
EF
)数据库连接性能比较,主要比较了插入与读取的时间,读取里可以进行模糊检索
ADO.NET
Entity
Framework
使用封装示范代码
ADO.NET
Entity
Framework
使用封装示范代码,这个中封装可以提高开发效率
Entity
Framework
实体框架入门
Entity
Framework
是微软官方提供的ORM工具,能让开发人员节省数据库访问的代码和时间,将更多的时间放到业务逻辑层代码上。
EF
提供变更跟踪、唯一性约束、惰性加载、查询事物等。开发人员使用Linq语言,对数据库操作如同操作Object对象一样省事。本课程从
Entity
Framework
的基本概念入手,循序渐进介绍了
EF
在.NET项目中的基本原理和使用方法,力求学员在较短时间内掌握
EF
的理论基础和具体用法。
[
EF
]
ADO.NET
3.5 高级编程 (LINQ 和
Entity
Framework
实现) (英文版)
☆ 资源说明:☆ [Wrox]
ADO.NET
3.5 高级编程 (LINQ 和
Entity
Framework
实现) (英文版) [Wrox] Professional
ADO.NET
3.5 with LINQ and the
Entity
Framework
(E-Book) ☆ 出版信息:☆ [作者信息] Roger Jennings [出版机构] Wrox [出版日期] 2009年02月03日 [图书页数] 672页 [图书语言] 英语 [图书格式] PDF 格式
ADO.NET
Entity
Framework
Cod
eF
irst 输出日志示例代码(
EF
4.3)
ADO.NET
Entity
Framework
Cod
eF
irst 如何利用
EF
ProviderWrappers 输出日志(
EF
4.3) http://blog.csdn.net/fangxinggood/article/details/7665000
C#
110,566
社区成员
642,567
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章