【问题标题】:Future of Linq to Sql and Entity FrameworkLinq to Sql 和实体框架的未来
【发布时间】:2010-03-08 23:00:20
【问题描述】:

我从事一个项目并想使用 ORM。我应该使用什么:Linq to Sql 或实体框架?如我所见,Linq to Sql 提供了更多机会,例如对枚举类型的支持。不过,也有人说,Linq to Sql 是为 Linq 玩和学习的,微软未来的战略在于 Entity Framework。那么我应该使用哪一个呢?

【问题讨论】:

  • 所以我们可以说StackOverflow是边玩边学的产物,因为它使用的是Linq to Sql:)
  • :D:D 不完全正确。我不知道,但人们说,linq to sql 是用来玩和学习的 :d:d 但是当人们开始大量使用它时,MS 改变了它的策略并支持它。现在 Linq to Sql 用的比Entity框架还多hanselman.com/blog/content/binary/WindowsLiveWriter/…

标签: .net linq-to-sql entity-framework


【解决方案1】:

据我了解,对 LINQ to SQL 的支持不会随处可见,但正在进行的开发的大部分资源将用于 LINQ to Entities。我认为无论哪个方向看起来都是更好的选择,你都是安全的。如果它是 LINQ to SQL,只要它有你需要的一切,就去吧——不要指望新功能。

【讨论】:

    【解决方案2】:

    如果您在这两者之间做出选择,并且可以使用 VS2010,那么肯定会选择 Entity Framework 4,因为它正确支持延迟加载、POCO 对象和纯代码模型。

    【讨论】:

      【解决方案3】:

      有一个 stackoverflow 帖子 here 讨论了两者之间的差异。

      有趣的是,Zack Peterson 的回答是,他发布了一个文章链接,该链接提出了一个问题“Linq to SQL 真的死了吗?”好文章。

      但是,如果您追求的是 ORM,您是否看过 NHibernate 或 SubSonic?肯定有一些不错的非 MS ORM。

      【讨论】:

        【解决方案4】:

        Entity Framework 功能丰富,微软正在积极增强和推广。

        Linq To Sql 的功能很差,微软没有推广。

        Linq To Sql 确实具有 Entity Framework (v4) 所没有的一些功能。

        在项目中使用 Linq To Sql 的风险远高于使用 EF v4 的风险,但您可以选择任一选项。

        就 EF v1/v3.5 而言,尽量避免使用它(但从 EF 3.5 升级到 EF 4 可能比从 L2S 升级到 EF 4 容易得多)。

        【讨论】:

          【解决方案5】:

          您应该尝试 PLINQO (http://www.plinqo.com)。它是具有大量改进的 LINQ to SQL。也许有一天EF不会烂。 :-)

          【讨论】:

            猜你喜欢
            • 2011-01-15
            • 2010-09-05
            • 1970-01-01
            • 2010-09-22
            • 1970-01-01
            • 2011-04-27
            • 2011-04-21
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多