English 中文(简体)
ADO.NET实体框架和Linq to Entities
原标题:
  • 时间:2008-12-24 22:28:54
  •  标签:

我对Linq to Entities感到困惑。它是实体框架的新名称还是两种不同的东西?

最佳回答

LINQ to Entities 实际上只是标准的 LINQ 扩展方法(例如 Where、OrderBy 等),用于查询 Entity Framework。这并不是唯一的选项;EF 还可以使用定制的 SQL 方言进行查询——实体 SQL。实际上,LINQ 扩展方法用于生成 Entity SQL,然后将该 Entity SQL 传递给提供程序。

那样,实现新的 EF 提供程序的人(因为它是可扩展的)只需要关心一个查询方面:实体 SQL。

当然,要严格按照LINQ的要求,你还需要使用语言部分,即

from product in db.Products
     where product.IsActive
     select product.Name;

等等 - 但由于这归结为扩展方法(在Queryable/IQueryable<T>上),大多数人将直接扩展使用视为LINQ,即

var qry = db.Products.Where(x=>x.IsActive).Select(x=>x.Name);
问题回答

暂无回答




相关问题
热门标签