包括使用 Lambda 表达式

2024-04-11

在基于字符串的重载中Include我们指定包含一个集合,然后简单地通过以正确的顺序指定相关导航属性来包含下一层的引用:

query.Include("Level1Collection.Level2Reference");

但是为什么当使用重载时Include使用 lambda 表达式,我们还必须使用Select语句能够指定上述查询:

query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference)).

为什么以下不起作用:

query.Include.(e => e.Level1Collection.Level2Reference)

谢谢


因为编译器无法识别上下文已将集合属性的含义从集合更改为集合中对象的替代。由于编译器不会根据上下文而改变,因此智能感知也不会改变。

当您提供 Include 字符串语句时,它知道必须使用反射来知道要包含哪些属性,并且编译时不会进行类型检查。底层方法知道,当它在字符串中的集合属性后面看到一个点时,它应该解析集合中对象的属性以获取下一个引用的属性,而不是集合本身(在本例中为“Level2Reference”)。

或者换句话说:这就是魔法。 :)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

包括使用 Lambda 表达式 的相关文章

  • 使用reduce方法的斐波那契数列

    于是 我看到有人用reduce方法来计算斐波那契数列 这是他的想法 1 0 1 1 2 1 3 2 5 3 对应于 1 1 2 3 5 8 13 21 代码如下所示 def fib reduce n initial 1 0 dummy ra
  • .NET 3.5 中的实体框架延迟加载

    由于服务器限制 我仅限于 Net 3 5 我使用 Linq to SQL 进行延迟加载 但后来切换到实体框架 L2E 在 3 5 中没有延迟加载 而 L2S 有 有没有办法以某种方式重新生成模板来实现这一目标 您必须在 EF 1 NET 3
  • 实体框架 SaveChanges 错误详细信息

    保存更改时SaveChanges在数据上下文上有没有办法确定哪个实体导致错误 例如 有时我会忘记将日期分配给不可为空的日期字段并收到 无效日期范围 错误 但我没有得到有关它是由哪个实体或哪个字段引起的信息 我通常可以通过煞费苦心地检查我所有
  • 我希望能够使用 lambda 表达式来指定要通过 wcf 服务返回的值范围

    我不知道这是否可能 但这会很酷 问题是这是否可能 但如果可能的话 举一个例子 我不确定您将使用什么方法签名来将 lambda 表达式传递到其中 例如方法IList
  • AspNetUserLogins 表身份

    AspNetUserLogins 的用途是什么 是存储用户的登录信息吗 然后我如何用该数据更新该表 AspNetUserLogins 的用途是什么 在Asp net Identity中 Identity系统使用AspNetUserLogin
  • 如何将这段 javascript 代码重写为 C++11?

    这是我在 Javascript Definitive Guide 中看到的 javascript 闭包代码 我想把它写成C 11 var uniqueID1 function var id 0 return function return
  • TwiML 应用程序 - 当用户回复 Twilio Number 的 STOP/START 时调用 AWS Lambda

    这是我的场景 我正在使用 Twilio 向我的客户发送短信 当用户决定不接收这些短信时 他们会回复 停止 并开始再次接收 这是由 Twilio 自动处理的 但是 我需要调用 AWS Lambda 函数并相应地更新我的数据库 这就是我到现在为
  • 使用 LINQ。有两个不同的列表。如何识别不匹配的对象

    我有三门课 public partial class Objective public Objective this ObjectiveDetails new List
  • 为什么 EF DataBase First 不使用 getdate()?

    我首先使用 EF 4 1 和数据库 示例表 CREATE TABLE dbo Product ID int IDENTITY 1 1 not null Title nvarchar 200 not null CreateDate datet
  • 为什么 Dictionary 上的这个 Linq 查询不作为数据源工作

    我在VB中有以下内容 Dim sources From source In importSources Select New With Type source Key Source source Value Name dgridSource
  • Linq 在 .Substring() 上抛出异常

    我遇到了一种情况 我需要让 LINQ to Entities 查询根据字符串的长度返回一个子字符串 这是查询 var query from f in Context Files orderby f DateAdded descending
  • 使用 Linq to Entities 查询创建 null ienumerable

    我正在开发一个使用实体框架的 ASP NET MVC 项目 我需要将从数据库中提取的值投影到PropertyValue类型 如下所示 public class PropertyValue public string StringValue
  • 将 lambda 表达式传递给 lambda 参数 c++11

    我想做这样的事情 int main auto f some variables take lambda function something with lambda function f other variables variables
  • ASP.NET MVC 3 Razor DisplayFor 委托

    我收到此错误 模板只能与字段访问 属性访问 一维数组索引或单参数自定义索引器表达式一起使用 这是我的代码 自定义 HTML 帮助程序 包装 DisplayFor 以便我可以选择模板 public static string DisplayL
  • LINQ WHERE 语句/忽略条件

    如果参数为 null 或为空 我需要忽略 WHERE 语句中的部分或全部条件 FE 我有简单的 LINQ 查询 var query from x in context a where x p param1 x i param2 select
  • 实体框架、dll、excel

    我用C 编写了Excel使用的dll 该dll是COM注册的 我与 Excel 的连接没有问题 该 dll 使用实体框架 5 从 SQL Server 数据库检索数据 如果我通过控制台应用程序运行该 dll 则该 dll 工作正常 但是当我
  • 学习实体框架[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 实体框架 - 查询可为空列时出现问题

    我在从具有可为空的tinyint 列的表中查询数据时遇到问题 问题似乎是查询生成为 AND CAST Extent1 PositionEffect AS int p linq 3 gt p linq 3 NULL 如果我手动运行该查询 它不
  • Web API 的 ASP.NET MVC Core 控制器 PATCH 方法

    给定一个数据库表 Person 包含 3 列 Id 名字和姓氏 使用真实的 DbContext 时 ASP NET Core Web API MVC 控制器方法 PATCH 仅修改姓氏 看起来如何 我根本不知道如何实现它 并且找不到相关教程
  • DataTable:通过 LINQ 或 LAMBDA 进行动态 Group By 表达式

    我有一个数据表 我想在其中对未指定数量的字段进行分组 发生这种情况的原因是用户可以选择他想要分组的字段 所以 实际上 我将选择推入列表中 在这个选择上 我必须对我的数据表进行分组 想象一下这段代码 VB 或 C 都一样 public voi

随机推荐

  • 如何关闭所有 pyplot 窗口(包括之前脚本执行的窗口)?

    所以我有一些 python 代码 使用 pyplot 绘制一些图表 每次运行脚本时都会创建新的绘图窗口 我必须手动关闭该窗口 如何在脚本开始时关闭所有打开的 pyplot 窗口 IE 关闭先前执行脚本期间打开的窗口 在 MatLab 中 这
  • if (x==0||7||14||21||-7||-14) {y=星期四;} [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 你能像这样
  • 使用 Google Analytics 跟踪 XML Web 服务上的点击次数

    我有一个 xml Web 服务 我想使用 Google Analytics 进行跟踪 由于它使用小型客户端 JavaScript 来进行跟踪 因此这是一个问题 是否可以在不运行 javascript 客户端服务器端的情况下解决此问题 也许这
  • Sails.js 如何修改路由以解释逗号分隔的 id 列表

    根据一些 JSON API 规范 例如http jsonapi org format urls individual resources http jsonapi org format urls individual resources 服
  • Bash:执行存储在变量中的命令[重复]

    这个问题在这里已经有答案了 我正在编写一个脚本 其中一部分没有按我的预期工作 为了简单起见 我在一个简单的例子中分解了这一部分 echo echo gt tmp while read cmd do cmd done 在这里 我希望 cmd
  • mongodb有路径通配符吗?

    我有一个 mongodb 集合 其中每个文档都有一个树结构 第一个级别是国家 地区代码 第二个级别是操作系统 第三个级别是处理器类型 最后的值是性能分数 AU OSX x86 64 17 4 RU Android A9 14 2 x86 7
  • 如何从Excel中读取数据并逐行写入文本文件?

    我想编写代码从 Excel 获取数据并将其写入文本文件 这是我的代码 import xlrd import os path wb xlrd open workbook os path join D TRB 2014 Data SPS1 de
  • 为什么 std::string 不是 std::vector 的特化? [复制]

    这个问题在这里已经有答案了 将字符串视为字符向量似乎是显而易见的 那么为什么 string 有它自己的特殊实现 它看起来与向量类有很大不同呢 只是为了说明这一点 这里有两个课程的一些片段 以表明所需的工作非常相似 例如两者都使用分配器来管理
  • 页面刷新期间的 selenium.common.exceptions.StaleElementReferenceException

    页面包含一些数据 行数很少的表 有 刷新 按钮 可以重新加载和重新绘制页面上的某些元素 而无需重新加载静态数据 ajax 我正在尝试为该页面创建适当的测试 但有时会出现 StaleElementReferenceException 我的代码
  • 多元二分法

    我需要一种算法来执行二维二分法来解决 2x2 非线性问题 示例 两个方程f x y 0 and g x y 0我想同时解决这个问题 我非常熟悉一维二分 以及其他数值方法 假设我已经知道解决方案位于界限之间x1 lt x lt x2 and
  • 在 Android 上的活动之间保持蓝牙连接 [重复]

    这个问题在这里已经有答案了 可能的重复 Android 如何将蓝牙连接传递给另一个活动 https stackoverflow com questions 6872970 android how to pass a bluetooth co
  • 默认情况下,PHPUnit 模拟对象从未期望过

    如果没有正式定义的期望 有没有办法告诉 phpunit 模拟对象永远不要期望方法调用 在我看来 不要对每种方法都抱有期望是没有道理的 所以 phpunit 没有任何功能 仅当您想完全确保某些方法不会被调用时 才应使用 从不 期望 无论如何
  • 查找每个逗号后的第二个空格

    This is a follow up to this question Concatenate previous and latter words to a word that match a condition in R https s
  • 如何更新猫鼬中的特定字段?

    我有一个数据集是 var JobSchema Schema candidates user type Schema Types ObjectId ref User status type String default In Progress
  • 如何使用私钥对字符串进行签名

    如何使用以下方式获取字符串的签名SHA1withRSA如果我已经拥有私钥byte or String 我想你所说的是你事先知道密钥对并且想用它来签名 验证 请看下面的代码 import java security KeyPair impor
  • 针对 SSE2 之前的处理器的 Java 运行时如何实现浮点基本运算?

    针对没有 SSE2 的 Intel 处理器的 Java 运行时如何处理浮点非规格化 当strictfp is set 即使 387 FPU 设置为 53 位精度 它也会保持超大的指数范围 强制检测每个中间结果的下溢 溢出 以及 使得很难避免
  • Python JSON AttributeError:“str”对象没有属性“read”

    我是 Python 初学者 Python 3 7 6 import json fil numbers json num with open fil r as file for obj in file num append json load
  • 如何用一个命令停止 mongo DB

    我需要能够在 cli 上启动 停止 MongoDB 开始非常简单 mongod 但要停止 mongo DB 我需要先运行 open mongo shell 然后键入两个命令 蒙戈 使用管理员 db shutdownServer 所以我不知道
  • shark不显示源代码

    我们正在尝试在 iPhone 应用程序上运行 shark 然而 在分析的样本中 它没有列出我们的任何应用程序功能 所有列出的都是库 当我们单击其中任何一个时 汇编代码都是可见的 大多数网站在构建应用程序时都会提到 生成调试符号 选项 我也找
  • 包括使用 Lambda 表达式

    在基于字符串的重载中Include我们指定包含一个集合 然后简单地通过以正确的顺序指定相关导航属性来包含下一层的引用 query Include Level1Collection Level2Reference 但是为什么当使用重载时Inc