【问题标题】:.NET Data Access [closed].NET 数据访问 [关闭]
【发布时间】:2011-07-17 01:52:38
【问题描述】:

在 .net 中学习数据访问的最佳方法是什么?实体框架似乎是新的“它”事物,但我还有哪些其他选择?

谢谢,

罗伯特

【问题讨论】:

标签: .net data-access


【解决方案1】:

您的起点是 ADO.NET,文档位于:http://msdn.microsoft.com/en-us/library/e80y5yhx(v=vs.80).aspx。

基于 ADO.NET 的两个最新 Microsoft 库是 LINQ to SQLEntity Framework。它们由 Microsoft 维护。

NHibernate 是一个非常常用且强烈推荐的开源 ORM 和持久化框架。文档和资源可从以下地址获得:http://nhforge.org/

SubSonic 是一个“超高保真蝙蝠侠实用腰带”,它可以提升您的数据访问(在 3.0 中使用 Linq),提供一些急需的实用功能,并且通常可以加快您的速度开发周期”。它是开源的,GitHub 页面位于https://github.com/subsonic/SubSonic-3.0

还有许多其他 ORM,但这些是最常用的开源关系数据库解决方案。 Wikipedia 在http://en.wikipedia.org/wiki/List_of_object-relational_mapping_software#.NET 上有一个相当广泛的 .NET ORM 软件列表。

ADO.NET 包括 .NET Framework 中数据访问背后的基本对象。 LINQ to SQL 可能是最容易学习和使用的 ORM,但如果您了解底层发生的事情,它总是会更容易。 Entity Framework 与 LINQ to SQL 类似,但包含更多功能,并且旨在采用更受域驱动的方法,而 LINQ to SQL 更多的是一种 Active Record 模式。

【讨论】:

  • 非常好的答案!正是我正在寻找的,因为我不了解 ADO.NET 和 Linq、Entity Framework 等之间的关系。Gracias!!
  • 看看 TinyDA 库:github.com/kumait/TinyDA
【解决方案2】:

我最喜欢的是Massive,这是一个使用 ExpandoObject 类和 SQL 的小型轻量级数据库抽象。

“一个会永远爱你的小而快乐的数据访问工具”

【讨论】:

    【解决方案3】:
    【解决方案4】:

    我个人喜欢Dapper.NET。这是一个非常轻量级的 ORM(主要处理映射类型和从数据库动态填充类)。它也是 Stack Overflow 开发堆栈的一部分。

    【讨论】:

      猜你喜欢
      • 2011-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-08
      • 2011-10-22
      • 2017-01-14
      相关资源
      最近更新 更多