2

由于我的工作需要,我已经在 2.0 中停留了一段时间,我现在正努力跟上最新的 .net 框架。我开始构建一个 Mvc 应用程序,我想知道数据访问应用程序块 (SqlHelper) 是否仍然是编写数据层的可接受方法。

我知道关于 EF 存在很多争论,包括它的速度性能、延迟加载以及将数据库与应用程序分开的问题。所以我犹豫现在去那里。

但是我看到很多只使用 ADO.Net 和 DataAdapter 的代码,我想知道是否在没有帮助框架的情况下转向 ADO.net。如果这是正确的,那么我的问题是为什么?不使用某种类型的辅助类/框架来进行数据访问似乎是一种倒退。

4

1 回答 1

2

如今, ORM的使用被视为最佳实践,并且随着其他更易于使用的库在 .NET 世界中的出现和突出,数据访问应用程序块已经失宠。

这些将包括 nHibernate、LINQ to SQL、实体框架,以提及大型、功能齐全的库(一些比其他功能更全)。

直接使用 ADO.Net 的人是那些希望对他们的 SQL 进行更多控制的人,而不是这些人(使用 ORM 总是可能的,但是当涉及到访问数据库而不是通过他们的习惯用法时,他们往往相当麻烦)。

一个轻量级 ORM 示例是Dapper,它是 ADO.Net 上的一个非常薄的层。

于 2013-03-30T14:46:13.940 回答