实体框架与LINQ to SQL
现在.NET v3.5 SP1已经发布(与VS2008 SP1一起),现在我们可以访问.NET实体框架。
我的问题是这个。 当试图在使用实体框架和LINQ to SQL作为ORM之间做出决定时,有什么区别?
我理解它的方式,实体框架(当与LINQ to Entities一起使用时)是LINQ to SQL的'大哥'? 如果是这种情况 - 它有什么优势? LINQ to SQL无法独立完成什么?
LINQ to SQL仅支持Microsoft SQL Server中可用的数据库表,视图,sprocs和函数的1到1映射。 这是一个很棒的API,用于快速构建数据访问权限,以设计相对精良的SQL Server数据库。 LINQ2SQL首次与C#3.0和.Net Framework 3.5一起发布。
LINQ to Entities(ADO.Net实体框架)是一个ORM(对象关系映射器)API,它允许广泛定义对象域模型及其与许多不同ADO.Net数据提供者的关系。 因此,您可以混合并匹配多个不同的数据库供应商,应用程序服务器或协议,以设计从各种表,源,服务等构建的对象的聚合混搭。ADO.Net Framework随.Net Framework 3.5 SP1。
这是关于MSDN的一篇很好的介绍性文章:将LINQ引入关系数据
我认为快速和肮脏的答案是
LINQ to SQL真的死了吗? 由Jonathan Allen为InfoQ.com提供
Matt Warren将[LINQ to SQL]描述为“甚至从未存在过”。 从本质上讲,它只是为了帮助他们开发LINQ直到真正的ORM准备就绪。
...
实体框架的规模导致它错过了.NET 3.5 / Visual Studio 2008最后期限。 对于不幸命名的“.NET 3.5 Service Pack 1”而言,它已经完成了,它更像是一个主要版本而不是一个服务包。
...
由于复杂性,开发人员不喜欢[ADO.NET实体框架]。
...
从.NET 4.0开始,LINQ to Entities将成为LINQ to关系场景的推荐数据访问解决方案。
链接地址: http://www.djcxy.com/p/5725.html