首页 新闻 赞助 找找看

推荐几个好用的Orm吧

1
悬赏园豆:140 [已解决问题] 解决于 2014-01-22 14:36

谢谢大家多推荐几个好用的Orm,谢谢了

hellozmh的主页 hellozmh | 初学一级 | 园豆:29
提问于:2013-11-04 13:57
< >
分享
最佳答案
0

来看看我的博客

收获园豆:98
迅捷网络[来送福利] | 小虾三级 |园豆:616 | 2014-01-22 14:35
其他回答(9)
0

EF/DAPPER

收获园豆:10
Yu | 园豆:12980 (专家六级) | 2013-11-04 14:07

EF性能不好,多数据源数据转换不方便

,dapper虽然短小,如同瑞士军刀,但是在现代战争中就一个瑞士军刀不行吧.

支持(0) 反对(0) hellozmh | 园豆:29 (初学一级) | 2013-11-04 14:14
0

1、EF

2、NHiberate

当然还有其他orm,如果是自己在用,可以园里的大牛们写的orm,要是在公司用orm,能选的EF和NHibernate,除非你说服领导用!

秋壶冰月 | 园豆:5903 (大侠五级) | 2013-11-04 14:24

EF反正性能差是被人知道的,坑多常常被人抱怨.

nhiberate一堆配置,不知道现在怎样.你用过没?

支持(0) 反对(0) hellozmh | 园豆:29 (初学一级) | 2013-11-04 14:26

@helloa: 两个都用过,NHibernate配置多,很正常啊,微软把.Net封装的问题,说用起来简单好呢,还是太傻瓜化了呢?楼下说的比较好,还是看你所用的场景,如果数据量特别大的时候,不是考虑优化sql,而是优化数据库,如分区等,最终还是看你自己选哪个了

支持(0) 反对(0) 秋壶冰月 | 园豆:5903 (大侠五级) | 2013-11-04 17:22
0

推荐买台电脑吧,推荐买个手机吧,这类型的问题,通常问的人,我要知道他是百万身家,高富帅还是屌丝。

同样的道理,你让人推荐,确不告诉应用场景,你希望ORM是万能的?

有的ORM主打易用,有的主打性能,有的主打通用。

比如我就用最普通的Linq to SQL,因为我只用SQL Server 数据库,开发目前报价100万以内的商业系统。

看中的是他的简洁,易用。当然,我不是只用微软的生成器,我用了CodeSmith + PlinqO(Linq to SQL)的CodeSmith版本。

如果你需要ORM可以上天,可以下海,可以开发连接ACCESS或是SQLite的单机版或是需要系统可以随时在各大数据库间切换,那么你可以选择微软的Entity Framework,或者楼上说的Nhibenate(楼上拼写错误了,你要是按那个GOOGLE不行)

但是,通常情况下,可移植性越强,说明配置项越多,需要掌握的技巧越多,类似你说的坑多或是配置复杂。开发1个亿的系统,你需要几个月几年做评估,文档,如果开发一个3000元的,你也用几个月去做文档,那就不知道如何说起了。

性能方面,看你的用户数,应用环境,数据库构建的合理,前台UI界面、代码的合理性,这一大堆东西都对性能有影响。

收获园豆:1
爱编程的大叔 | 园豆:30839 (高人七级) | 2013-11-04 14:36

说得很好哦.

我只想高性能,简单易用

支持(0) 反对(0) hellozmh | 园豆:29 (初学一级) | 2013-11-04 14:43

@helloa: 这个可不好说。还是得看应用场景,哈。

拿手机比喻吧,

      钱多了,买Vertu

      少一点,土豪金

      再少点,小米

      更少点,大米

      最少,NOKIA 神机

但是他们都能打电话,易用性见仁见智。

高性能是一个很多人有误解的知识点,通常情况下,通用的技术在性能方面的差异可能有10倍,但是书写不好的数据查询SQL的性能差异去可能有100倍,设计不良的UI,结构不良的数据表设计等等,都是性能的杀手。

另外一方面,大部份的商业程序,不象计算银河系黑洞理论啥的,通常最耗时的操作是用户的键盘录入和鼠标动作。理论上,只要不超过1S的查询,你是10MS还是100MS,对用户来说,没有感觉。

很多人做测试时用10万次循环来说明性能问题。其实这个没有意义的,对微软或是ORACLE有意义,对于商业程序来说,最终用户选择三个搜索条件,大概需要5秒,点下查询按钮,0.5少,出现结果1S,看结果,15分钟。这是最典型的场景。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2013-11-04 14:55

@爱编程的大叔: 

 

钱多了,买Vertu

      少一点,土豪金

      再少点,小米

      更少点,大米

      最少,NOKIA 神机

Nokia  1020和1520

哪个不比小米贵

支持(0) 反对(0) li-peng | 园豆:954 (小虾三级) | 2013-11-04 17:32

@bluejance: Nokia神机是1050。

支持(0) 反对(0) 幻天芒 | 园豆:37175 (高人七级) | 2013-11-04 22:42
0

EF\NHibernate 首选, 都可以使用Fluent Api进行映射,性能 EF应该比NH好,EF性能不差。

慢的话,可能掉坑里了。

收获园豆:1
Qlin | 园豆:2403 (老鸟四级) | 2013-11-04 17:39
0

提高开发团队的职业技能是关键,团队的技术素质往往比常用的orm对整个解决方案的性能影响大得多。地基打的再好,墙磊得不行,肯定是不行的。更何况,现在主流的orm是技术大佬写的,还是经得起考验的。

收获园豆:10
jone_e | 园豆:1410 (小虾三级) | 2013-11-04 18:51
0

Orm太多,具体还是看个人喜好。

EF/NH后台硬,比较主流。

L2S被后娘养,现在不怎么讨好。

Dapper,PetaPoco轻量,灵活,功能相对较弱。

复杂业务逻辑的(一般多表连接操作)MyBatis.Net。

国人作品:Cyq.Data,Moon,PDF.Net,XCode,ClownFish,ALinq,ELinq,Smark.Data等。

收获园豆:10
幻天芒 | 园豆:37175 (高人七级) | 2013-11-04 22:47
0

Entity Framework/NHibernate 都行

寒冷的冬天 | 园豆:102 (初学一级) | 2013-11-05 08:43
0

我就知道有人会说Alinq

贺臣 | 园豆:307 (菜鸟二级) | 2013-11-07 08:45
0

SqlSugar性能最快,语法简单

阿妮亚 | 园豆:210 (菜鸟二级) | 2016-08-11 06:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册