ORM还是直接SQL?

Zif*_*ion 3 .net performance orm

可能重复:
使用ORM还是纯SQL?

你会选择使用ORM或某种家用旋转DAL吗?为什么?

ORM的优势显而易见 - 更好的结构/组织,更好的语言适应性等.但我担心性能问题.有人分享战争故事吗?任何有关不那么明显的风险或回报的见解都会非常感激.

Fly*_*wat 5

我将仅将其保留为我个人的观点,因为这是一个有点神圣的话题。

每次我开始一个项目并尝试 ORM(无论是 L2SQL、Subsonic、EF NHibernate 等)时,我总是会在某个时候放弃它并使用存储过程手动重写 DAL。

ORM 对于快速搭建很方便,但是如果您正确设计实体层,插入新的数据访问层就非常简单,而且我遇到了太多问题,要么与 ORM 做我想做的事情,要么ORM 只是简单地做一些愚蠢的事情(N+1 查询,或者当我实际上只需要主键查找时下拉相关表等)。


Ree*_*sey 5

我完全按你提到的原因使用ORM.

它们通常表现良好.如果某个区域存在性能问题,您可以随后优化该部分,或者如果真正有帮助则切换到直接SQL,因为这两种技术并不相互排斥.