EF4或LINQ to SQL有哪些优势?

3

EF4有哪些优势,什么情况下它比LINQ to SQL更受欢迎?

4个回答

2
LINQ to SQL将不再进行未来的开发。因此,EF是未来的发展方向。 Entity Framework vs LINQ to SQL(这应该可以解释您想了解的内容)。

0

嗯,两个主要的区别是:

1)EF可以针对多种数据库引擎进行定位,包括Oracle和MySQL。不仅仅是MS SQL Server。
2)您可以进行所谓的“代码优先”模式开发。基本上,您创建对象模型,并附带一些提示,EF将为您生成模式。

在我看来,Linq to Sql非常适合快速原型设计和简单的CRUD场景。任何更高级或企业级的应用都会使用EF4。(至少这是微软希望我们相信的:) 我在生产中使用Linq to SQL时运气不错,值得一试。


0

EF4基本上在映射中添加了许多面向对象的特性,这些特性在LINQ-to-SQL中并不存在,例如丰富的对象继承模型。我的看法是,所有这些都不是好的设计所必需的,而且我自己的工作中也没有遇到过任何需要增加EF4带来的复杂性的情况。

话虽如此,微软已经弃用了LINQ-to-SQL,并将不再继续开发它,因此它最终会在功能和效率上落后于EF4(如果它还没有)。因此,实际的选择很简单:选择EF4。


0

在尝试了两种方法并花费了一周以上的时间将一个项目从Linq转换到SQL之后,我可以说我真的更喜欢Linq to SQL。主要原因是EF对于LINQ查询中可以使用的函数更加限制。在EF中,我不得不将我的linq表达式强制转换为列表,以便能够进一步操作它们。很抱歉我无法记住任何例子,因为这已经过去几个月了...

EF的一个真正优点是与WCF数据服务连接时的易用性。如果您正在开发一个应该具有RESTful API的网站,那么这非常方便。

此外,尽管Linq to SQL相当成熟,但它确实是一项即将消亡的技术。它不会获得任何重大更新,这使得在新项目中承诺使用Linq To SQL变得更加困难。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接