如何重用带有参数的 LINQ Select 表达式

2023-12-22

我编写了一个 LINQ 查询,并为 Select 子句创建了一个表达式来重用它。

我的查询看起来像这样

 DataContext.Single.Select(SearchSelector).ToList();

其中搜索选择器定义为

 private Expression<Func<Singles, SearchSingles>> SearchSelector = s =>
    new SearchSingles
    {
    };

上面的工作正常,但是如果我想使用两个输入参数怎么办?我将如何调用它?

 private Expression<Func<Singles,string, SearchSingles>> SearchSelector = (s,y) =>
    new SearchSingles
    {
    };

与其使用存储表达式的字段,不如使用一种方法来创建给定特定字符串所需的表达式:

private static Expression<Func<Singles, SearchSingles>> CreateSearchSelector(
    string foo)
{
    return s =>
        new SearchSingles
        {
            Foo = foo,
        };
}

然后你可以像这样使用这个方法:

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

如何重用带有参数的 LINQ Select 表达式 的相关文章

  • 使用反射检测属性的访问修饰符类型

    我编写了一些代码来使用反射查看属性 我已经使用反射从类中检索了属性列表 但是我需要查明该财产是公共的还是受保护的 例如 public string Name get set protected int Age get set Propert
  • 预览MouseMove 与 MouseMove

    我有相当多的 XAML 经验 但最近我注意到我的大多数同事都使用预览鼠标移动代替鼠标移动事件 我一直用鼠标移动它对我很有帮助 但我忍不住问我什么时候应该使用预览鼠标移动什么时候鼠标移动 有什么区别 各自有什么优点和缺点等等 PreviewM
  • 如何以一对一/零关系更新员工和身份用户

    我正在尝试更新员工记录 也想更新身份用户 如果我先单独更新身份用户 例如 UserManager Update user Context Entry employee State System Data Entity EntityState
  • 上传并 POST 文件到 PHP 页面

    我需要一种上传文件并将其 POST 到 php 页面的方法 php 位于 apache 服务器上 我在我的桌面应用程序中使用这个 C 代码 这是一个c代码的套接字 当我执行程序时 可以得到 文件大小为772906 打开服务器正常 文件大小为
  • C++ Protobuf 与 JSON 的转换 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有人熟悉将 protobuf 消息与 JSON 相互转换的稳定 C 解决方案 库 代码片段等 吗 在我看来 这个更好 https gith
  • 使用实体框架的子查询

    我正在移植一个子系统NHibernate to 实体框架并希望了解将以下查询移植到的最佳方法EF var date DateTime Now It can be any day AccountBalanceByDate abbd null
  • 无法构建 lldb - 找不到“原子”文件

    我正在尝试建立lldb这是 Clang LLVM 3 4 2 下载的一部分LLVM 下载页面 http llvm org releases download html 我可以构建 LLVM Clang Compiler RT 和 Extra
  • 使用 LINQ 计算两个字符串之间的匹配字符数

    一位朋友问我如何使用 LINQ 改进一些代码 如何在两个字符串之间进行逐字符比较以计算索引处的匹配数 这是原始代码 可以使用 LINQ 对其进行改进吗 private int Fitness string individual string
  • 获取 C# 字符串的非第一个段的快速而巧妙的方法

    I do a split 在一个字符串上 我想拉出返回字符串的第一个元素以获得字符串的其余部分 f e THIS IS AN AMAZING STRING split 我想要得到除了这个之外的所有单词 这是 是一根神奇的绳子 该字符串在第一
  • 无需 Excel 和 OLEDB 即可读取 .xlsx

    是否有机会在 C 中读取 xlsx 文件 而无需在客户端上安装 Excel 并且没有可用的 OLEDB 连接 该应用程序是一个用 VS2005 C NET Framework 2 0 编写的 Winforms 项目 这里的这个怎么样 EPP
  • GSL 中的错误 - 根查找

    大家好 我在让我的程序与 GSL 根查找一起工作时遇到问题 我正在尝试找到我的方程的解 我正在寻找 64 行数据的解决方案 但在某些特定行中 程序无法继续 可能是因为不存在好的解决方案 但我希望程序在找不到解决方案时跳过行 但我的程序有时会
  • QT 和 Crypto++ 以及 /MTd

    我有两个带有 MSVC2013 32 位编译器的 QT 5 5 项目 第一个是 Qt 控制台应用程序 正在使用 crypto 这两个在 pro 文件中 QMAKE CXXFLAGS RELEASE MT QMAKE CXXFLAGS DEB
  • 尝试更新 datagridview 时界面冻结

    我正在使用下面的代码复制文件并将状态列设置为datagridview通知用户连接已建立 但是当我按下按钮执行时 方法界面冻结 我已经搜索了很多我知道使用task run 不可能 因为它不包含在 not 4这是一个新功能 net 4 5我也知
  • 如何将大数组发送到存储过程

    我需要将多个列表 大约 20000 个 id 发送到存储过程 如下所示 1391924 6546510 7419635 6599910 6546888 1116510 6546720 我有这个数据List
  • 使用 MEF 从 shell 加载棱镜模块视图

    我有一个 shell 项目 它将引导程序中的模块加载到 shell 主视图中的选项卡控件中 我刚刚在选项卡项上实现了一个关闭按钮 现在提出了如何从 shell 重新加载模块视图的问题 尝试使用 moduleManager LoadModul
  • 如何将 CreateThread 用于类成员函数?

    你如何使用CreateThread 创建作为类成员的函数的线程 您需要创建一个静态方法来用作实际的线程启动函数 并将一个指向实例的指针作为lpParameter论证CreateThread 这将被传递给静态方法 该方法可以将其转换为对象指针
  • 通过 C# 对 Access 数据库进行 LIKE 查询始终返回 COUNT(*) 为 0

    请查看以下代码 using OleDbConnection openCon new OleDbConnection ConfigurationManager AppSettings AccessConnectioString openCon
  • File.Copy() 同步还是异步?

    我正在使用 File Copy source dest true 通过覆盖选项将文件从本地复制到远程 就我而言 目标是映射的网络驱动器 File Copy source dest true UnMapDrive unmap the netw
  • 循环引用和ScriptIgnore问题

    我有几个相互引用的 BusinessObject 类 我需要在 JsonResponse 中序列化一个类并将其返回到我的视图 我不断收到循环引用异常 但无法摆脱它 我已经放置了 ScriptIgnore 每个不是简单数据类型属性的属性上的装
  • 为什么 C# 和 Java 中出现“null”?

    我们注意到 用 C 或 Java 开发的软件中的许多错误都会导致 NullReferenceException 语言中包含 null 有什么原因吗 毕竟 如果没有 null 我就不会有 bug 对吧 换句话说 语言中的哪些功能如果没有 nu

随机推荐

  • 使用 OSX Mavericks GHC 安装和构建 GHC

    为什么升级到 OSX Mavericks 后我的 GHC 7 6 3 无法工作 我花了很长时间才弄清楚如何使用 OSX 10 9 和 GHC 7 6 3 这里有一些提示可以帮助您重新构建 haskell 代码 Summary 下载命令行工具
  • Laravel:更新或创建关系?

    A user hasOne car users id name 1 Bob 2 Alice cars idMember color energy 1 blue 0 95 在 的里面User我有课 public function car re
  • 如何在Eclipse上的包中创建子包?

    我最近开始在 Eclipse 上为 Minecraft Bukkit 插件进行编码 并且进展顺利 最近 我一直在尝试将子包制作成包 但是如果我尝试新 gt 套餐 然后它使一个包与我的主包分开 我是初学者 所以请简单说明 还有什么我可以尝试的
  • 使用 Flask 运行计划时出现问题

    我需要在 Flask 应用程序上定期运行某个任务 我决定使用一个简单的库 Schedule https github com dbader schedule https github com dbader schedule 为此 我在与主应
  • 通过微服务传播错误的良好实践

    我们有一个微服务架构 我们正在讨论如何向客户端公开内部错误 这是一个例子 假设我们有 3 个服务 服务 A B 和 C 当客户端向公共服务 A 发送请求时 该服务向服务 B 发送请求 服务 B 向服务 C 发送请求 这是内部的 需要身份验证
  • JMX认证

    cd JAVA HOME jre lib management cp jmxremote password template jmxremote password chmod u rw jmxremote password vi jmxre
  • 从文件文本中删除非 ASCII 字符

    Python专家 我有这样一句话 this time air u00e6 u00e3o was filled u00e3o 我希望删除非 Ascii unicode 字符 我可以只使用以下代码和函数 def removeNonAscii s
  • 对子 div 应用与父 div 相同的宽度

    我有一个 div 其中包含多个 div 我改变了父div的宽度 但由于 div 是父 div 的子级 因此宽度正在增加 我这样写了css类 s4 workspace css width 900px Here s4 workspace是父di
  • 将 Facebook 应用链接链接到 iTunes 下载页面

    我刚刚制作了一个可以分享到 Facebook 的 iOS 应用程序 Facebook 帖子正确显示我的分享来自我的应用程序并显示 1 小时前通过 MYAPP 该应用程序的名称也充当链接 当我单击该名称时 用户应该被重定向到该应用程序的 iT
  • 组合方法返回问题

    我写了一个方法来查找所有n选择k的组合 当我让它无效并简单地打印出解决方案时 它就可以正常工作 但是 我正在尝试更改它以返回List
  • 如何在单击外部时关闭没有背景的垫对话框?

    我怎样才能关闭这个对话框堆栈闪电战示例 https stackblitz com edit angular tkg6v6 最小的 可重现的示例 通过点击外部 如果我删除该属性 这效果很好hasBackdrop false gt 工作 Sta
  • 如何找到*.appref-ms的目标*.exe文件

    我必须备份从文件运行的程序 appref ms http dl dropbox com u 40690073 GitHub appref ms当我打开文件时GitHub appref ms http dl dropbox com u 406
  • 未定义的属性:PDO::$connect_error

    我正在尝试使用 dbc gt connect error检查尝试连接到我的数据库时是否发生任何错误 我总是收到一个错误页面 上面写着 注意 未定义的属性 PDO connect error in 第 7 行 C xampp htdocs a
  • 无法使用 Eclipse 模拟器将文件推送到 SD 卡 [重复]

    这个问题在这里已经有答案了 我正在尝试将 3GP 文件推送到 Eclipse 模拟器 我打开模拟器并在 Eclipse 中转到 DDMS 透视图 在文件资源管理器中 我打开 mnt 并突出显示 sdcard 我单击 将文件推送到设备上 按钮
  • Powershell获取CPU百分比

    关于如何在 Powershell 中获取进程的 CPU 百分比似乎没有任何简单的解释 我用谷歌搜索并在这里搜索 但没有看到任何明确的信息 有人可以用通俗的语言解释一下如何获取进程的 CPU 百分比吗 谢谢 这里有一些可以帮助您开始的东西 i
  • TSQL 从日期时间中剥离日期

    最好的脱毛方法是什么date从 DATETIME 开始 所以仅time还剩下来做比较吗 我知道我可以执行以下操作 CONVERT DATETIME CONVERT VARCHAR 8 GETDATE 8 但这涉及到转换和字符 如果我想检查某
  • android 使用 Renderscript 实现模糊效果崩溃导致 A/libc:致命信号 7 (SIGBUS),代码 2,故障地址 0x9e6fa000 in tid 482 (AsyncTask #1)

    我使用模糊效果 同时应用于从资源加载的位图 它按预期工作 同时使用通用图像加载器下载图像并应用于位图 它会导致 A libc 致命信号 7 SIGBUS 代码 2 tid 31955 中的故障地址 0x9d56e000 AsyncTask
  • 在 Laravel 4 中使用命名空间

    我是 Laravel 的新手 并且通常使用 PHP 命名空间 在我决定制作一个名为 File 的模型之前 我没有遇到任何问题 我将如何正确地进行命名空间以便我可以使用我的文件模型类 这些文件是app controllers FilesCon
  • 反向 mysql_real_escape_string

    我有一段很大的数据 可能包含引号和双引号 我在用着mysql real escape string 安全存放 当我把它拿出来查看时 所有引号都被转义了 我尝试使用str replace去掉所有的引号 但这变成了 r n s into rn
  • 如何重用带有参数的 LINQ Select 表达式

    我编写了一个 LINQ 查询 并为 Select 子句创建了一个表达式来重用它 我的查询看起来像这样 DataContext Single Select SearchSelector ToList 其中搜索选择器定义为 private Ex