gpt4 book ai didi

c# - Entity Framework 查询生成器方法 : why "it" and not lambdas?

转载 作者:太空狗 更新时间:2023-10-29 21:55:52 25 4
gpt4 key购买 nike

我刚刚开始使用 EF,像下面这样的查询让我觉得很奇怪:

var departmentQuery =
schoolContext.Departments.Include("Courses").
OrderBy("it.Name");

具体来说,让我印象深刻的是“it.Name”。当我使用 LINQ to SQL 时,几乎查询构建器查询中的每个过滤器都可以用 lambda 指定,例如,在本例中,d => d.Name。

我看到有 OrderBy 的重写采用返回 IOrderedQueryable 或 IOrderedEnumable 的 lambda,但这些显然没有获取随后可以进行数据绑定(bind)的 ObjectResult 所需的 Execute 方法。

毕竟我读过关于 lambda 如何对这类东西如此有意义,以及它们如何被翻译成表达式树然后翻译成目标语言,这对我来说似乎很奇怪 - 为什么我需要使用“它.名称"?

最佳答案

我用我的 lamdba 表达式;我可以做 Where (it.SomeProperty == 1)... 你有 System.Linq 作为 namespace 吗?您可以尝试重组为:

var departmentQuery = from d in schoolContext.Departments.Include("类(class)") orderby d.Name 选择 d;

这些是一些可能性。

HTH.

关于c# - Entity Framework 查询生成器方法 : why "it" and not lambdas?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3049300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com