实体框架 - 规范函数如何与Linq - Linq-to-Entities和Canonical Functions不同

时间:2009-09-15 19:14:51

标签: c# linq entity-framework

我正在阅读实体框架,作者正在解释ESQL,规范函数和Linq。他没有解释规范功能是什么以及为什么需要这些功能。他在书中使用的代码可以很容易地转换为Linq。规范函数在Entity框架中的作用在哪里?我可以使用规范函数而不是linq和EQSL吗?规范函数的优缺点是什么。

规范功能

var query = context.question
            .Where(c => c.question_id == 1)
            .Select((c) => new { c.question_id });

Linq

var query = from p in context.question
                    where p.question_id == 1
                    select new { p, p.question_title};

1 个答案:

答案 0 :(得分:2)

不,它们是相同的,它们将编译成(更多或可能)相同的字节码;但有时在编写代码时更容易/更清晰地链接命令。