如何使用 Linq 从父级列表中选择复杂的子对象并对其进行分组

2024-04-06

如何使用 Linq 从父级列表中选择复杂的子对象并对其进行分组。

我有一个订单每个订单对象都有一个订单产品变型列表(OrderLineList),以及每个订单产品变体对象有 ProductVariant,然后产品变体对象将有一个Product包含产品信息的对象。

我的目标是从订单列表中选择最受欢迎的产品并将其分组。

谁能帮我这个?

非常感谢。


您的描述很难理解,但我认为您只是想找出产品并根据它们出现的次数对它们进行排名。 SelectMany 将对此有所帮助。

 var query = orderList.SelectMany( o => o.OrderLineList )
                        // results in IEnumerable<OrderProductVariant>
                      .Select( opv => opv.ProductVariant )
                      .Select( pv => p.Product )
                      .GroupBy( p => p )
                      .Select( g => new {
                                    Product = g.Key,
                                    Count = g.Count()
                       });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Linq 从父级列表中选择复杂的子对象并对其进行分组 的相关文章

  • 检测到 NuGet 包的版本冲突

    我正在开发 ASP Net core 2 1 Web 应用程序项目 我的解决方案中有 1 个项目和 3 个其他库 它是高级架构 数据访问层 DAL 业务层 BL 公共层 CL 所以我需要添加引用来连接一些库和项目 我已经添加了CL参考我的项
  • Mono 无法保存用户设置

    我在 Mono Ubuntu 上保存用户设置时遇到问题 这是代码示例 private void Form1 Load object sender EventArgs e string savedText Properties Setting
  • Qt - 无法让 lambda 工作[重复]

    这个问题在这里已经有答案了 我有以下功能 我想在其中修剪我的std set
  • 当我单击 C# 中的“取消”按钮时重定向到新页面(Web 部分)

    Cancel button tc new TableCell btnCancel new Button btnCancel Text Cancel btnCancel Click new EventHandler btnCanel Clic
  • Guid 应包含 32 位数字和 4 个破折号

    我有一个包含 createuserwizard 控件的网站 创建帐户后 验证电子邮件及其验证 URL 将发送到用户的电子邮件地址 但是 当我进行测试运行时 单击电子邮件中的 URL 时 会出现以下错误 Guid should contain
  • TextBox 焦点的 WinForms 事件?

    我想添加一个偶数TextBox当它有焦点时 我知道我可以用一个简单的方法来做到这一点textbox1 Focus并检查布尔值 但我不想那样做 我想这样做 this tGID Focus new System EventHandler thi
  • ZLIB 解压缩

    我编写了一个小型应用程序 该应用程序应该解压缩以 gzip deflate 格式编码的数据 为了实现这一点 我使用 ZLIB 库 使用解压缩功能 问题是这个功能不起作用 换句话说 数据不是未压缩的 我在这里发布代码 int decompre
  • 为什么密码错误会导致“填充无效且无法删除”?

    我需要一些简单的字符串加密 所以我编写了以下代码 有很多 灵感 来自here http www codeproject com KB security DotNetCrypto aspx create and initialize a cr
  • 范围和临时初始化列表

    我试图将我认为是纯右值的内容传递到范围适配器闭包对象中 除非我将名称绑定到初始值设定项列表并使其成为左值 否则它不会编译 这里发生了什么 include
  • C# 编译器如何决定发出可重定向的程序集引用?

    NET Compact Framework 引入了可重定向程序集引用 现在用于支持可移植类库 基本上 编译器会发出以下 MSIL assembly extern retargetable mscorlib publickeytoken 7C
  • 用于从字符串安全转换的辅助函数

    回到 VB6 我编写了一些函数 让我在编码时无需关心字符串的 null 和 数字的 null 和 0 等之间的区别 编码时 没有什么比添加特殊情况更能降低我的工作效率了用于处理可能导致一些不相关错误的数据的代码 9999 10000 如果我
  • C# using 语句、SQL 和 SqlConnection

    使用 using 语句 C SQL 可以吗 private static void CreateCommand string queryString string connectionString using SqlConnection c
  • 如何排列表格中的项目 - MVC3 视图 (Index.cshtml)

    我想使用 ASP NET MVC3 显示特定类型食品样本中存在的不同类型维生素的含量 如何在我的视图 Index cshtml 中显示它 an example 这些是我的代码 table tr th th foreach var m in
  • 从匿名类型获取值

    我有一个方法如下 public void MyMethod object obj implement 我这样称呼它 MyMethod new myparam waoww 那么我该如何实施MyMethod 获取 myparam 值 Edit
  • 过期时自动重新填充缓存

    我当前缓存方法调用的结果 缓存代码遵循标准模式 如果存在 则使用缓存中的项目 否则计算结果 在返回之前将其缓存以供将来调用 我想保护客户端代码免受缓存未命中的影响 例如 当项目过期时 我正在考虑生成一个线程来等待缓存对象的生命周期 然后运行
  • 32位PPC rlwinm指令

    我在理解上有点困难rlwinmPPC 汇编指令 旋转左字立即然后与掩码 我正在尝试反转函数的这一部分 rlwinm r3 r3 0 28 28 我已经知道什么了r3 is r3在本例中是一个 4 字节整数 但我不确定这条指令到底是什么rlw
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c
  • 如何在 GCC 5 中处理双 ABI?

    我尝试了解如何克服 GCC 5 中引入的双重 ABI 的问题 但是 我没能做到 这是一个重现错误的非常简单的示例 我使用的GCC版本是5 2 如您所见 我的主要函数 在 main cpp 文件中 非常简单 main cpp include
  • boost::program_options:带有固定和可变标记的参数?

    是否可以在 boost program options 中使用此类参数 program p1 123 p2 234 p3 345 p12 678 即 是否可以使用第一个标记指定参数名称 例如 p 后跟一个数字 是动态的吗 我想避免这种情况
  • 从类模板参数为 asm 生成唯一的字符串文字

    我有一个非常特殊的情况 我需要为类模板中声明的变量生成唯一的汇编程序名称 我需要该名称对于类模板的每个实例都是唯一的 并且我需要将其传递给asm关键字 see here https gcc gnu org onlinedocs gcc 12

随机推荐

  • 设置分层绘图的大小?

    我正在为我的应用程序制作一个图标 该应用程序基本上是一个朋友查找器 我正在创建一个看起来很像谷歌纬度图标的叠加层 我有一个因用户而变化的图像 并且我有边框 我已经能够很好地进行分层绘制和叠加 但问题是 图像拉伸到边框的大小 这是一个问题 因
  • 当应用程序进入后台时如何停止运行?

    我正在尝试建立一个可运行的程序 它可以每 5 秒间隔加载一次广告 当然 5 秒太快了 这只是为了测试目的 这是我的代码 package com admobsdk dfp handler import com google ads impor
  • 正则表达式从路径中删除文件名

    如何设计一个 RegEx 脚本来从路径中删除文件名 诀窍在于 道路上有各种各样的扳手需要投入工作 路径可以包括 1 Folder1 Folder2 Folder3 1234 folder4 5678 ApplesandOranges txt
  • 构造函数不能是虚拟的

    在其中之一互联网上的 C 教程 http www bogotobogo com cplusplus constructor php 我发现了下面关于为什么构造函数不能是虚拟的描述 我们不能声明虚拟构造函数 我们应该指定准确的 编译时对象的类
  • Leaflet R 大地图的性能问题

    我想知道是否有其他人在使用 R 中的传单包绘制大量标记和多边形时遇到类似的问题 这通常应该是这样的 但是 当我放大 缩小地图时 多边形和标记显然不合适 或者您可以说底图没有正确调整 下面包含一个示例 当我绘制较小的区域或几个标记时 我不会遇
  • Typescript 事件监听器 - 类型到 props 映射

    export enum GameEventType EVENT ONE event one EVENT TWO event two EVENT THREE event three export type GameEvent type Gam
  • 如何通过另一个 DLL 访问一个 DLL 中的命名空间?

    我有多个 DLL 我自己管理或我自己不管理 我想将它们包含在 CoreLib dll 中 这样我就不必在每个使用这些 DLL 的应用程序中包含 可能 数百个 DLL 我通过直接引用 DLL 来包含 DLL 因此 我还想在我正在创建的应用程序
  • 局部变量初始化应该是强制的吗?

    未初始化的本地变量 特别是指针 引起的维护问题对于 任何做过一些 c c 维护或增强的人来说都是显而易见的 但我仍然看到它们 并且偶尔会听到作为其理由的性能影响 在 c 中很容易证明冗余初始化已被优化 less test c include
  • 刷新 Visual Studio Code 文件列表

    Visual Studio Code 版本 0 10 11 在 OSX 上 不会刷新文件夹中的文件 有什么办法可以强制刷新吗 目前我必须关闭并重新打开整个程序 编辑 与此同时 重新加载按钮已添加到文件资源管理器小部件中 Use the wo
  • Spring/JPA/JSF 的异常处理策略

    我们在我们的应用程序中使用 JSF Spring 和 JPA 我们正在尝试简化项目的异常处理策略 我们的应用程序架构如下 UI JSF gt 托管 Bean gt 服务 gt DAO 我们正在为 DAO 层使用异常翻译 bean 后处理器
  • VSCode 运行 Python 2 而不是 3

    我在 VSCode 中使用 Python 如果我使用 Cmd Shift P 并输入 Run Code 它会使用 Python2 运行代码 即使我已指定它使用 Python3 我已阅读本教程 如何强制 VSCode 使用 Python 3
  • 相当于Java 8日期和时间API中的jodatime间隔[重复]

    这个问题在这里已经有答案了 Java 8 处理时间的方式似乎已经改进了很多 以至于我开始考虑替换jodatime http www joda org joda time 在某些情况下 但我缺少的是相当于Interval http www j
  • 计算第一个数字相似的所有元组值的平均值

    考虑元组列表 7751 0 9407466053962708 6631 0 03942129 7751 0 1235432 如何以Python方式计算所有元组值的平均值 其中第一个数字相似 例如答案必须是 7751 0 5321449026
  • 如何通过蓝牙将文件从Android发送到电脑

    任何人都可以给出蓝牙服务器客户端的工作示例 从Android到计算机 我想将数据从 Android 手机传输到 C 应用程序 现在我使用下面的 Android 代码 效果很好 但它仍然无法将数据传输到我的计算机 可能无法写入这些数据 任何人
  • 我正在尝试从 firebase 获取数据,但 flutter 在 StreamBuilder 上显示 null 安全错误

    我在用着StreamBuilder在其中 我有一个任务列表 它从快照中获取输入并相应地显示数据 但是在处理快照数据时我遇到了空安全问题 代码如下所示 StreamBuilder
  • Laravel with Eloquent 不会在数据库中保存模型属性

    我正在使用 php laravel 框架构建一个网络应用程序 当我将模型保存到数据库时 它会进行插入 但不会保存模型属性 我不知道如何修复 因为 laravel 日志没有显示任何错误 任何想法 有模型 The database table
  • iOS 10 GM 与 xcode 8 GM 导致视图因圆角和 ClipsToBounds 消失

    我使用 iOS 10 Beta 7 和 Xcode 8 beta 测试了我的应用程序 一切正常 然而就在几分钟前 我安装了两者现在可用的通用汽车版本 并遇到了一个奇怪的问题 我在我的应用程序和我正在使用的自定义单元格中使用自定义表格视图单元
  • HQL 到 SQL 转换器

    有谁知道如何将 NHibernate HQL 转换为 SQL 脚本 由于 HQL 翻译取决于您的映射以及运行时行为 因此我认为不太可能有一种方法可以静态地执行此操作 您可以针对真实数据库运行 HQL 并通过特定 RDBMS 或 NProf
  • 为什么我的 Android 应用程序一直告诉我需要定义一个已定义的 ListView id?

    每当我尝试运行我的应用程序时 都会引发以下异常 01 22 00 40 51 868 ERROR AndroidRuntime 2219 java lang RuntimeException 无法启动活动 ComponentInfo Red
  • 如何使用 Linq 从父级列表中选择复杂的子对象并对其进行分组

    如何使用 Linq 从父级列表中选择复杂的子对象并对其进行分组 我有一个订单每个订单对象都有一个订单产品变型列表 OrderLineList 以及每个订单产品变体对象有 ProductVariant 然后产品变体对象将有一个Product包