gpt4 book ai didi

asp.net - 我应该在 2016 年为 .Net 使用哪个 ORM 来与 SQL 服务器通信?

转载 作者:行者123 更新时间:2023-12-01 14:35:34 24 4
gpt4 key购买 nike

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

3年前关闭。




Improve this question




我的大部分服务器端经验都是使用 nodeJS meteor 或导轨,所以我还没有丰富的 .Net 知识。在 Rails 中,选择 ORM 非常容易,因为 ActiveRecord 是镇上唯一的游戏,或者看起来如此。我的方法通常是使用 ORM 查询您可以使用的所有内容,如果您无法将其关闭,则下拉到原始 SQL。

但是,我正在尝试阅读有关在 .Net 4.5 或更新的应用程序中查询我的数据库的教程和类(class),我对 future 的方式感到困惑。我在下面看到教程

  • Linq Lambda 语法
  • Linq 查询语法
  • Entity Framework

  • 现代 .net 应用程序的建议 ORM 是什么? 似乎我可以在上述所有内容中进行基本的 CRUD 操作。但是一个更适合说跨表连接吗?请注意,我只打算查询 Microsoft SQL 服务器数据库以获取我的 .net 解决方案。

    真正让我困惑的是读到 EF 取代了 linq 但后来读到 EF 也使用了 linq。所以当我看到一个例子说选择所有列时,我不知道我使用的是过去还是 future 的语法。也只是看代码,我无法判断它是 linq 还是 EF。我可以判断它是查询还是 lambda 语法。

    最佳答案

    你提到的选项并不是所有的 ORM,在这 3 个中唯一的 ORM 是 EF。 .net 中还有其他流行的 ORM,包括:

  • NHibernate
  • LLBLGen 专业版
  • ActiveRecord

  • 他们中的大多数都支持 LINQ。 EntityFramework 是较新的,但它与 VS 集成并且开箱即用使其成为 .net 中最受欢迎的 ORM,它取代了 LINQ to Entities 而不是 LINQ 本身。
    msdn 中定义的 LINQ(语言集成查询)可用于不同的数据源。

    LINQ is a set of features that extends powerful query capabilities to the language syntax of C#. LINQ introduces standard, easily-learned patterns for querying and updating data, and the technology can be extended to support potentially any kind of data store. The .NET Framework includes LINQ provider assemblies that enable the use of LINQ with .NET Framework collections, SQL Server databases, ADO.NET Datasets, and XML documents.



    使用 LINQ 有两种不同的语法,通常称为 Fluent 语法和 Query 语法。

    如果您刚开始使用 .net,我建议您使用具有流畅语法的 EF,这将是在 .net 中开始查询数据库的最快方法。

    关于asp.net - 我应该在 2016 年为 .Net 使用哪个 ORM 来与 SQL 服务器通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37189863/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com