3

实体框架是否值得为新的小型应用迁移?大约 10 个表格和一个 WinForms 应用程序。

即替代方法是 DataTables/DataRows 或 Linq-to-SQL

4

4 回答 4

4

我不同意那些说 LINQ to SQL 更适合小型项目的人,这是基于将 LINQ to SQL 和实体框架用于小型项目的实际经验。我很难克服 LINQ to SQL 非常弱的模式更新场景(丢弃旧模型,重新生成新模型,然后重新应用自定义)。在大多数情况下,您可以使用这两种工具做您需要做的事情,但是如果您的 DB 模式会改变或发展,您将花费太多时间摆弄 L2S 设计器。

避免使用实体框架的最佳理由是您不理解它。我不是在这里翻转;如果你确实了解 L2S 而你不了解 EF,那么一定要使用 L2S;你可能会更有效率。但是,如果您了解这两种工具,那么 EF 几乎可以完成 L2S 可以做的所有事情,甚至更多(简单的模型更新、模型优先、代码优先模型、可定制的代码生成、RIA 服务等等……) .

于 2010-04-28T13:17:52.097 回答
3

Entity Framework 是一个很棒的产品 - 但它显然是为更高级、更复杂的情况而设计的,在这些情况下,您需要能够拥有一个与底层存储模型不同或可能不同的域对象模型。如果您需要 - 很好 - 但对于大多数较小的应用程序来说,这完全是矫枉过正,只会增加额外的性能杀手层。

对于小型应用程序,请使用Linq-to-SQL - 或查看Subsonic。它们都在您的表格顶部提供了非常薄且非常简单的层,它们适用于较小的应用程序。

数据表是如此 1990 年代......远离,它们很乱,它们很难使用,它们不愉快并且使用起来效率不高。

于 2010-04-28T05:18:36.403 回答
2

我可能会为一个小项目选择 LINQ to SQL。

于 2010-04-28T04:37:31.960 回答
2

远离数据表。LINQ to SQL 应该足够了,IMO。

于 2010-04-28T04:37:45.020 回答