Expression.Lambda 和运行时查询生成,嵌套属性“Where”示例

2024-03-29

我在有关为Where查询构建表达式树的问题上找到了非常好的答案。

Expression.Lambda 和运行时的查询生成,最简单的“Where”示例 https://stackoverflow.com/questions/8315819/expression-lambda-and-query-generation-at-runtime-simplest-where-example

有人可以帮助我并向我展示如何在具有嵌套属性的场景中实现此示例。我的意思是,而不是:

var result = query.Where(item => item.Name == "Soap")

有了这个解决方案:

var item = Expression.Parameter(typeof(Item), "item");

var prop = Expression.Property(item, "Name");

var soap = Expression.Constant("Soap");

var equal = Expression.Equal(prop, soap);

var lambda = Expression.Lambda<Func<Item, bool>>(equal, item);

var result = queryableData.Where(lambda);

如何为以下内容构建树?

var result = query.Where(item => item.Data.Name == "Soap").

(这个答案最初是由问题中的OP发布的。)

该问题可以通过以下方式解决:

var item = Expression.Parameter(typeof(Item), "item");

var dataExpr = Expression.Property(item, "Data");

var prop = Expression.Property(dataExpr, "Name");

var soap = Expression.Constant("Soap");

var equal = Expression.Equal(prop, soap);

var lambda = Expression.Lambda<Func<Item, bool>>(equal, item);

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

Expression.Lambda 和运行时查询生成,嵌套属性“Where”示例 的相关文章

  • 以文化中立的方式将字符串拆分为单词

    我提出了下面的方法 旨在将可变长度的文本拆分为单词数组 以进行进一步的全文索引处理 删除停止词 然后进行词干分析 结果似乎不错 但我想听听关于这种实现对于不同语言的文本的可靠性的意见 您会建议使用正则表达式来代替吗 请注意 我选择不使用 S
  • WCF RIA 服务 - 加载多个实体

    我正在寻找一种模式来解决以下问题 我认为这很常见 我正在使用 WCF RIA 服务在初始加载时将多个实体返回给客户端 我希望两个实体异步加载 以免锁定 UI 并且我想利用 RIA 服务来执行此操作 我的解决方案如下 似乎有效 这种方法会遇到
  • 为什么两个不同的 Base64 字符串的转换会返回相等的字节数组?

    我想知道为什么从 base64 字符串转换会为不同的字符串返回相同的字节数组 const string s1 dg const string s2 dq byte a1 Convert FromBase64String s1 byte a2
  • 秒表有最长运行时间吗?

    多久可以Stopwatch在 NET 中运行 如果达到该限制 它会回绕到负数还是从 0 重新开始 Stopwatch Elapsed返回一个TimeSpan From MSDN https learn microsoft com en us
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • Asp.NET WebApi 中类似文件名称的路由

    是否可以在 ASP NET Web API 路由配置中添加一条路由 以允许处理看起来有点像文件名的 URL 我尝试添加以下条目WebApiConfig Register 但这不起作用 使用 URIapi foo 0de7ebfa 3a55
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • OleDbDataAdapter 未填充所有行

    嘿 我正在使用 DataAdapter 读取 Excel 文件并用该数据填充数据表 这是我的查询和连接字符串 private string Query SELECT FROM Sheet1 private string ConnectStr
  • 堆栈溢出:堆栈空间中重复的临时分配?

    struct MemBlock char mem 1024 MemBlock operator const MemBlock b const return MemBlock global void foo int step 0 if ste
  • 在 ASP.NET 5 中使用 DI 调用构造函数时解决依赖关系

    Web 上似乎充斥着如何在 ASP NET 5 中使用 DI 的示例 但没有一个示例显示如何调用构造函数并解决依赖关系 以下只是众多案例之一 http social technet microsoft com wiki contents a
  • WCF 中 SOAP 消息的数字签名

    我在 4 0 中有一个 WCF 服务 我需要向 SOAP 响应添加数字签名 我不太确定实际上应该如何完成 我相信响应应该类似于下面的链接中显示的内容 https spaces internet2 edu display ISWG Signe
  • 转发声明和包含

    在使用库时 无论是我自己的还是外部的 都有很多带有前向声明的类 根据情况 相同的类也包含在内 当我使用某个类时 我需要知道该类使用的某些对象是前向声明的还是 include d 原因是我想知道是否应该包含两个标题还是只包含一个标题 现在我知
  • 如何在 C 中调用采用匿名结构的函数?

    如何在 C 中调用采用匿名结构的函数 比如这个函数 void func struct int x p printf i n p x 当提供原型的函数声明在范围内时 调用该函数的参数必须具有与原型中声明的类型兼容的类型 其中 兼容 具有标准定
  • 如何序列化/反序列化自定义数据集

    我有一个 winforms 应用程序 它使用强类型的自定义数据集来保存数据进行处理 它由数据库中的数据填充 我有一个用户控件 它接受任何自定义数据集并在数据网格中显示内容 这用于测试和调试 为了使控件可重用 我将自定义数据集视为普通的 Sy
  • Windows 窗体:如果文本太长,请添加新行到标签

    我正在使用 C 有时 从网络服务返回的文本 我在标签中显示 太长 并且会在表单边缘被截断 如果标签不适合表单 是否有一种简单的方法可以在标签中添加换行符 Thanks 如果您将标签设置为autosize 它会随着您输入的任何文本自动增长 为
  • 通过指向其基址的指针删除 POD 对象是否安全?

    事实上 我正在考虑那些微不足道的可破坏物体 而不仅仅是POD http en wikipedia org wiki Plain old data structure 我不确定 POD 是否可以有基类 当我读到这个解释时is triviall
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • Windows 和 Linux 上的线程

    我在互联网上看到过在 Windows 上使用 C 制作多线程应用程序的教程 以及在 Linux 上执行相同操作的其他教程 但不能同时用于两者 是否存在即使在 Linux 或 Windows 上编译也能工作的函数 您需要使用一个包含两者的实现
  • 使用.NET技术录制屏幕视频[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有没有一种方法可以使用 NET 技术来录制屏幕 无论是桌面还是窗口 我的目标是免费的 我喜欢小型 低

随机推荐

  • 验证是否有可用网络连接的最简单方法是什么?

    我是 c net 开发的新手 但我已经为我公司的一小部分资产编写了一个股票跟踪应用程序 我还在 SQL 2000 中设置了它连接的数据库 目前 当网络连接可用时 它可以正常工作 但我想扩展它 以便在没有连接时使用 首先 我需要知道是否有可用
  • 如何在 LWUIT 选项卡上显示表单屏幕?

    我在表单上有列表项 当用户单击选项卡时 我必须在选项卡上显示该表单 之后如何将该表单添加到选项卡form show 或者之前 我需要使用表单屏幕默认显示第一个选项卡 您可以在选项卡中显示表单 形式也是一个组件 Form frmObj new
  • 设置 Text().frame(maxWidth: .infinity) 后如何保持 Text 作为前导对齐

    这可能是一个简单的案例 但我找不到解决方案 这是我的代码 使用 GeometryReader 设置 SwiftUI 视图大小的相对布局 如 Image 问题出现在最后一个VStack上 我希望文本的背景转到VStack的右端 因此 我将其设
  • OG:类型文章与网站,用于非文章的单个网页

    我正在寻求有关 og type 文章与网站对于单个网页的使用的澄清 该网页在技术上不是 文章 但也不代表整个网站 文档似乎矛盾 From https developers facebook com docs opengraphprotoco
  • 使用正则表达式从内容中删除 HTML 注释 [重复]

    这个问题在这里已经有答案了 我正在将页面内容放入变量中 content 我需要使用正则表达式从 content 中删除 HTML 注释 我尝试了以下代码 它无法正常工作 content preg replace content 看起来你错过
  • 清理 React Hooks 中未安装组件的内存泄漏

    我是 React 的新手 所以这可能很容易实现 但即使我做了一些研究 我自己也无法弄清楚 如果这太愚蠢了 请原谅我 Context 我在用着惯性 js https inertiajs com 使用 Laravel 后端 和 React 前端
  • mysql 命令超时错误

    我正在使用 asp net mvc 将数据库从 SQL Server 2005 转换为 MySQL 我在 SQL Server 中有大量数据 400k 记录 但我面临命令超时 等待CommandTimeout错误 当我在 Google 上搜
  • 如何让JNLP下载正确版本的JavaFX 2?

    JavaFX 2 高度依赖本机代码 对于我的桌面应用程序 我想为每个受支持的操作系统选择最匹配的 JavaFX 风格 以使目标系统上的安装尽可能轻松 由于 JavaFX 2 附带了几个 Ant 任务来帮助部署 我认为这是可行的方法 但我似乎
  • 如何获取点击时的CSS悬停值?

    对此进行后续跟进question https stackoverflow com questions 7265418 how can i unbind the hover opacity effect of a text link when
  • 从地图中删除 google.maps.marker.AdvancedMarkerView

    我有一张地图 它根据搜索填充标记 我正在尝试使用较新的谷歌地图功能AdvancedMarkerView所以我可以用自定义 HTML 填充它 但是 随着我的搜索更新 我想刷新旧标记并在需要时放置新标记 但我一生都无法弄清楚如何做 https
  • 如何使用 Swift 和 MacOS 隐藏顶部栏(带按钮)?

    我试图从窗口中删除标题和顶部按钮 基本上只显示内容 我尝试过各种方法但没有成功 也没有任何明显的原因说明它不起作用 有关我尝试过的选项 请参阅 setVisibility 函数 AppDelegate swift import Cocoa
  • 可以在 JSON 对象中使用尾随逗号吗?

    手动生成 JSON 对象或数组时 在对象或数组的最后一项上留下尾随逗号通常更容易 例如 从字符串数组输出的代码可能如下所示 在类似 C 的伪代码中 s append for i 0 i lt 5 i s appendF d i s appe
  • 在 C++ 中,当用 ctrl-c 中断时,在死亡之前调用带参数(信号号除外)的函数

    我想在程序终止之前用 ctrl c 中断时向文件中写入几行 然而 文件的位置不是硬编码的 所以我需要比正常中断处理更多的东西正如这里所解释的 https stackoverflow com questions 1641182 how can
  • 我可以使用逻辑索引或索引列表对张量进行切片吗?

    我正在尝试使用列上的逻辑索引对 PyTorch 张量进行切片 我想要与索引向量中的 1 值相对应的列 切片和逻辑索引都是可能的 但是它们可以一起吗 如果是这样 怎么办 我的尝试不断抛出无用的错误 类型错误 使用 ByteTensor 类型的
  • 跨域 bean 验证 - 为什么你不工作

    我的应用程序遇到了一点问题 我想检查字段密码和确认密码是否匹配 所以我尝试像这个问题的第一个答案中那样进行操作 使用 Hibernate Validator JSR 303 进行跨领域验证 https stackoverflow com q
  • 使用 boost::asio::streambuf 的代码会导致段错误

    我在使用 asio streambuf 时遇到了问题 希望有人能告诉我我是否错误地使用了该类 当我运行此示例代码时 它出现段错误 为什么 更令人困惑的是 这段代码可以在 Windows Visual Studio 2008 上运行 但不能在
  • jquery validate 1.8.1“jQuery”未定义错误IE8

    首先 是的 jQuery 在验证插件或任何其他 js 文件之前加载 获取 jQuery 未定义 IE8 中的 jquery validate 1 8 1 min js 第 13 行字符 1 FF Chrome 和 Safari 都可以完美地
  • Swing 应用程序的丰富日历组件[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我的公司正在向 Swing 应用程序添加一些丰富的日历功能 我们希望它像 Outlook 日历一样工作 以下是我们的一些要求 日 周和月的
  • Android SQLite 按名称搜索

    我从这里举了一个在 Android 中使用 SQLite 的示例 http www cnblogs com pangblog p 3327696 html http www cnblogs com pangblog p 3327696 ht
  • Expression.Lambda 和运行时查询生成,嵌套属性“Where”示例

    我在有关为Where查询构建表达式树的问题上找到了非常好的答案 Expression Lambda 和运行时的查询生成 最简单的 Where 示例 https stackoverflow com questions 8315819 expr