Mer*_*tal 12 c# linq entity entity-framework
一点澄清:我正在浏览Julia Lerman在实体框架上的Oreilly标题,我感到非常困惑.
我有Charlie Calvert的基本LINQ,但是在我与Lerman的书的10分钟会话中,发现LINQ是LINQ to SQL,它的DataContext对象似乎功能不足......
虽然实体框架是未来,但它有一个叫做Entity SQL的东西,在我眼里看起来就像Transact-SQL.现在我的眼睛可能有点生疏,但问题是:
由于实体框架是微软支持的主要支柱,因此学习LINQ to SQL是否有任何意义
var numberGroups =
from n in numbers
group n by n % 5 into g
select new { Remainder = g.Key, Numbers = g };
Run Code Online (Sandbox Code Playgroud)
我是否认为Entity SQL和LINQ是两种不同的技术,实体SQL实际上是否使用LINQ?
发布了我收到的许多回复:
好伙计,我是新手,所以这次我正在编辑我的答案;-)非常感谢您的全面,快速和非常有帮助的答案.关心MereMortal
Mar*_*ell 25
LINQ!= LINQ-to-SQL
LINQ是一个概念,包括一些语言支持.有许多实现 - LINQ-to-SQL就是其中之一,ADO.NET数据服务,实体框架的LINQ到实体,LINQ到对象,LINQ到SQL,LINQ到亚马逊,DbLinq等.
您仍然使用LINQ with Entity Framework; 实际上,LINQ-to-Entities是首选,提供编译时静态检查.实体SQL只是用于查询EDM(实体数据模型)的另一种机制(除了LINQ到实体之外).
ESQL有三个主要原因:
对于其他一切,LINQ应该是您使用Entity Framework的工具.
LINQ是语言功能的通用术语,允许通过某种数据存储在C#或VB.NET中编写查询.有LINQ to SQL,LINQ to Entities,LINQ to Objects等.
LINQ to SQL密切建模物理数据库结构.它为数据库中的每个表生成一种类型.如果数据库发生更改,则需要更改LINQ to SQL代码.
LINQ to Entities更紧密地模拟概念数据库设计.它允许您映射到物理数据库,但是,例如,允许您创建一个包含Person和Contacts表中数据的Person实体.这允许您的呼叫者根据数据的含义而不是数据的实现方式进行思考.
此外,微软已经表示,与LINQ to Entities中的开发相比,LINQ to SQL的未来发展将受到限制.鉴于增加的灵活性以及LINQ to SQL不会获得更多增强的事实,我将使用LINQ to Entities和Entity Framework.
| 归档时间: |
|
| 查看次数: |
3649 次 |
| 最近记录: |