代码之家  ›  专栏  ›  技术社区  ›  MD Sayem Ahmed

现在从C#访问数据库最常用的方法是什么[关闭]

  •  10
  • MD Sayem Ahmed  · 技术社区  · 14 年前

    好吧,我问这个问题是因为我完全糊涂了。我曾经使用普通的方法从C#访问数据库(我的意思是使用SQLConnection、OracleConnection、SQLCommand、executequery等)。后来我听说了ADO.NET、ORM和NHibernate(不是专业人士,但我能管理)。

    最近我没有看到任何关于NHibernate的特别活动。我周围那些曾经使用NHibernate的人(也是我的粉丝)现在开始转向其他方法。

    那么现在最常用的数据库访问方法是什么呢?我该如何跟踪这种变化趋势?

    7 回复  |  直到 14 年前
        1
  •  19
  •   Mark Byers    14 年前

    最常见的方法可能是:

    • 解决并发冲突
    • 直接使用ADO.NET
    • 其他O/RMs。

    它们都还在使用中,各有优缺点。我认为微软目前正试图鼓励人们使用 Entity Framework

        2
  •  10
  •   foobarfuzzbizz    14 年前

    只有一种方法-ADO.NET for SQL Server。更具体地说,连接和读卡器对象在那里。现在,您可能会说有实体框架之类的东西,但有趣的是,它们位于真正的访问层之上,使用前面命名的两个访问元素。甚至数据集也是一个更高的层(数据是通过数据读取器读取的)。

    那么最常用的数据库是什么 现在的存取方法?

    我打赌还是数据集。遵循拖放原则的未受教育者仍然占大多数,而visualstudio中的这种方法导致了数据集。

    专业人士使用各种ORM。实体框架现在是由那些不知道ORM能不能正确编程的人推动的。现在我的最佳选择仍然是NHibernate的高质量层。

        3
  •  4
  •   Toan Nguyen    14 年前

        4
  •  1
  •   STO    14 年前

    首先,这是ADO.NET。它是一种“真正的”访问技术,因为另一种(如NHibernate、LINQ2SQL、Entity Framework(它们都是ORM))使用ADO.NET实际连接到数据库并对其执行命令。当然,.NET提供了其他与数据库交互的方法,例如导入一些COM接口,但它们并不自然。

    此外,还存在帮助您与数据库通信的工具。它是ADO.NET扩展(如企业库数据访问),并且工具允许您使用对象(命名实体),这些对象对于面向对象的运行时来说是.NET的,但是可以从数据库中加载和保存这些实体。这些工具被命名为ORM(object relational mapper),现代的工具很容易使用并且很好用。

        5
  •  1
  •   Jose    14 年前

    我个人喜欢使用linqtosql CodeSmith 更具体地说,我认为 Plinqo

    我通常先对数据库进行设计,所以我在数据库中进行更改,转到VS重新生成实体,然后我可以继续编码。

    不管您选择什么,我认为ORM的一个重要因素是能够配置它以满足您的需求,没有万能的。

    顺便说一句,我不为CodeSmith工作,我只是用它:)

        6
  •  1
  •   19WAS85    12 年前

    NHibernate和Entity Framework是很好的数据库抽象工具(EF-Code-First是惊人的),但在某些情况下,这是不好的。

    就我个人而言,我更喜欢控制自己。

    我创造了一个工具, Thunderstruck Github .

        7
  •  1
  •   BenMorel Pankaj Kumar    10 年前

    如果我要选一个,我会说实体框架是最通用的方法, LINQ到SLQ在未来会被淘汰,NHibernate在未来会越来越多。

    但最好的建议可能是为整个团队挑选一个!即使它有不利的一面,他们都在某个点或其他。