LINQ - 组合多个列表以形成一个新列表并按键对齐它们?

2024-01-07

我有两个不同列的列表,但每个列表都有一个具有相同键的公共列,如何将它们组合成一个新列表,即:

public class TradeBalanceBreak
{
    public int CommID { get; set; }
    public int CPFirmID { get; set; }
    public double CreditDfferenceNotional { get; set; }
    public string Currency { get; set; }
}

public class Commission
{
    public int CommID { get; set; }
    public PeriodStart { get; set; }
    public ResearchCredit { get; set; }
}

public class CommissionList
{
    public List<Commission> Commissions { get { return GetCommissions(); }}

    private List<Commission> GetCommissions()
    {
        // retrieve data code ... ...
    }
}

public class TradeBalanceBreakModel
{
    public List<TradeBalanceBreak> TradeBalanceBreaks { get; set; }
}

public class CommissionModel
{
    public List<CommissionList> CommissionLists { get; set; }
}

我想要实现的是合并/扁平化TradeBalancesBreaks and CommissionLists(来自模型类)合而为一。这CommID两者之间共享。

Thanks.


使用 Join(扩展方法版本)——更新后

 var list1 = GetTradeBalanceBreaks();
 var list2 = new CommisionsList().Commissions;

 var combined = list1.Join( list2,  l1 => l1.ID, l2 => l2.First().ID,
                            (l1,l2) = > new
                                        {
                                           l1.CommID, 
                                           l1.CPFirmID,
                                           l1.CreditDifferenceNotional,
                                           l1.Currency,
                                           PeriodStarts= l2.SelectMany( l => l.PeriodStart ),
                                           ResearchCredits = l2.SelectMany( l => l.ResearchCredit ) 
                                       })
                     .ToList();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LINQ - 组合多个列表以形成一个新列表并按键对齐它们? 的相关文章

  • 需要带有 DateTime 转换的 lambda 表达式 OrderBy

    我正在尝试创建一个 lambda 表达式 Linq C 3 5 它可以对数据类型为 String 的值执行 OrderBy 但实际上包含可解析的 DateTime 例如 典型值可以是 5 12 2009 1 14 2008 等 下面的 Or
  • Linq - 加入混乱

    为了回答这个问题 我们假设我有表 A 和 B 并且它们之间存在 1 1 关系 在 Linq 查询中 我可以执行以下操作 from row in A where row B Description someValue select A 其中
  • linq 中使用字符串数组 c# 的 'orderby'

    假设我有一个这样的方法定义 public CustomerOrderData GetCustomerOrderData string CustomerIDs var query from a in db Customer join b in
  • 搜索实体的所有字段

    我正在尝试在客户数据库上实现 多功能框 类型的搜索 其中单个查询应尝试匹配客户的任何属性 这是一些示例数据来说明我想要实现的目标 FirstName LastName PhoneNumber ZipCode Mary Jane 12345
  • Python 将列表中的字符串转换为数字

    我遇到了以下错误消息 以 10 为基数的 int 的文字无效 2 2 外部用单引号括起来 内部用双引号括起来 该数据位于primes列出使用print primes 0 样本数据在primes list 2 3 5 7 The primes
  • 实体框架 - 从 ObjectContext 查询与从导航属性查询

    我注意到 根据从实体框架模型中提取数据的方式 我会得到不同类型的结果 例如 获取特定部门的员工列表时 如果我直接从 ObjectContext 中提取 我会得到一个IQueryable
  • R:重新列出平面列表

    这个问题 https stackoverflow com questions 8139677有一个很好的解决方案 可以在保留列表数据类型的同时展平列表 其中unlist才不是 flatten function x unlist vector
  • System.NotSupportedException:“集合是只读的。”从 iList 中删除对象时抛出

    运行下面的代码片段时抛出异常 我有一个 iListof webelements 如果该元素包含字符串 WSC 我想将其从 iList 中删除 谁能帮我吗 代码如下 IList
  • Haskell - 交替两个列表中的元素

    我正在尝试编写一个 haskell 函数 它接受两个整数列表并生成一个列表 其中包含从两个列表中交替获取的元素 我有这个功能 blend xs ys 一个例子 blend 1 2 3 4 5 6 应该返回 1 4 2 5 3 6 我的逻辑是
  • 如何组合两个列表,删除重复项,而不改变列表的元素顺序?

    我想合并两个列表并删除重复的值 假设我有两个列表 lst1 23 15 46 76 45 lst2 43 32 15 49 45 10 我想输出 result 23 15 46 76 45 43 32 49 10 在结果中 必须保持元素的列
  • Python 检查列表是否嵌套

    我有一个列表 有时它是嵌套的 有时不是 根据是否嵌套 延续不同 如何检查此列表是否嵌套 True or False应该输出 example 1 2 3 gt False 1 2 3 gt True 您可以使用isinstance https
  • 如何在Python中手动对数字列表进行排序?

    规格 Ubuntu 13 04 Python 3 3 1 背景 Python的初学者 遇到了这个 手动排序 问题 我被要求做的事情 让用户输入 3 个数值并将它们存储在 3 个不同的变量中 不使用列表或排序算法 手动将这 3 个数字从小到大
  • 按属性对对象列表进行分组

    我需要对对象列表进行分组 Student 使用属性 Location 特定对象 代码如下 public class Grouping public static void main String args List
  • 平面列表到层次结构

    我最难将文件夹列表转换为层次结构 Public Class Folder Public Property FolderID As Integer Public Property Name As String Public Property
  • 如何使用 bash 粘贴来自单独文件的列?

    我想用分隔符 合并不同的列表 第一个列表有 2 个单词 cat first one who 第二个列表有 10000 个单词 cat second languages more simple advanced home expert tes
  • Python - 为什么这段代码被视为生成器?

    我有一个名为 mb 的列表 其格式为 Company Name Rep Mth 1 Calls Mth 1 Inv Totals Mth 1 Inv Vol Mth 2 等等 在下面的代码中 我只是添加了一个包含 38 个 0 的新列表 这
  • 我可以在 LINQ 中使用递增计数变量吗?

    我想做这样的事情 from a in stuff let counter 0 select new count counter a Name 但我收到一条错误消息 告诉我计数器是只读的 有没有办法做类似的事情 而无需在查询之外声明变量 基本
  • 自动加载 linq2entities 中的关系

    当我的模型中的两个实体之间存在关系时 组成员 1 用户 并尝试使用 LINQ 从该关系中选择项目 从 user GroupMember 中的实体选择实体 除非我首先使用以下语句加载关系 否则我总是得到空结果 user GroupMember
  • 在 LINQ 查询中进行转换

    是否可以在 LINQ 查询中进行强制转换 为了编译器的缘故 下面的代码并不糟糕 但最好将其放入一个查询中 Content content dataStore RootControl as Controls Content List
  • 在一个解决方案中调用不同项目的方法

    1 个解决方案中有 3 个项目 我对第一个项目中的主文件进行的主要操作 但是我需要调用第三个项目中的方法并使用类 例如 第三个项目有 public DataClasses1DataContext base global WindowsFor

随机推荐

  • 代码块中的 Response.Write 输出出现在 html 之外

    抛开关于是否应该在 aspx 的 HTML 部分中使用 Response Write 的争论不谈 在一个项目中 我正在研究使用 Response Write 在前端显示后面代码中的变量 它曾经工作正常 但项目中的某些内容最近发生了变化 另一
  • django 中带有持续时间字段的聚合

    我的模型是 class Mo Model dur DurationField default timedelta 0 price per minute FloatField default 0 0 minutes int IntegerFi
  • 我可以使用 OAuth 令牌作为 Ocp-Apim-Subscription-Key 的替代品吗?

    我正在考虑使用 Azure API 管理为许多后端 API 提供一致的前端 大多数 API 使用 OAuth 2 0 应用程序流程 ClientID 客户端密钥 后端 API 检查声明 范围 进行保护 这很好用 但是当客户通过 APIM 使
  • ORM vs 传统数据库查询,它们的字段是什么?

    ORM 似乎是一个快速发展的模型 有利也有弊 来自 Richard Kiessig 的超快速 ASP NET http www amazon com Ultra Fast ASP NET Build Ultra Scalable Serve
  • QSocketNotifier:无法从另一个线程启用或禁用套接字通知程序

    我尝试使用 QT 构建一个多线程游戏服务器 因此 每个客户端都是一个基于 QThread 的独立线程 现在我需要将数据发送到同一游戏室中的其他客户端 在其他线程中 例如 当房主关闭游戏房间时 游戏服务器需要向同一 soom 中的其他客户端发
  • 如何检查 Linux 上进程的堆大小

    我正在编写一些代码 但它一直崩溃 后来在挖掘转储后 我意识到我超出了最大堆限制 如果我添加了对 malloc 的检查 生活会更容易 尽管我修复了这个问题 有什么方法可以增加我的堆大小吗 PS 相当类似的问题 https stackoverf
  • 未根据标记名对博客详细信息进行分组

    我正在尝试分组blogdetails基于tagname 单击第二个加号按钮时 想要将每个标记名下的所有博客详细信息分组 目前 它忽略分组并仅显示标记名 有人可以告诉我这里可能有什么问题吗 我添加了代码沙箱链接以供参考 https codes
  • 在 Mongo 中存储嵌套类别(或分层数据)的最有效方法?

    我们为多种产品提供了嵌套类别 例如 体育 gt 篮球 gt 男子 体育 gt 网球 gt 女子 并使用 Mongo 而不是 MySQL 我们知道如何在 MySQL 等 SQL 数据库中存储嵌套类别 但如果您能提供有关如何对 Mongo 执行
  • 如何向 html 表格添加 jQuery 过滤器?

    我正在尝试使用 JQuery 将下拉过滤器放入 html 表中 这是代码 报告 php table class table table striped thead tr th th th First Name th th Last Name
  • 从 JavaScript 函数对象的名称获取字符串形式?

    在 JavaScript 中 如果变量中有一个字符串 有没有办法获取对具有匹配名称的函数对象的引用 请注意 我可以使用 jQuery 因此我也可以使用它的任何辅助方法 例如 myFunction function var func name
  • 是否可以只需要测试而不需要安装包?

    我正在向现有的可安装 pip 的项目添加功能 项目所有者认为我的添加pandas对 setup py 的安装要求 太重 因为该项目应该保持苗条 我添加的功能不需要pandas 因为该功能是在pandas DataFrame对象 但我为它编写
  • 如何在 ActionBarSherlock 中实现多选和上下文 ActionMode?

    我应该如何使用 ActionBarSherlock 在 AdapterView 上实现多选 因为它不提供 MultiChoiceModeListener 这就是它的样子 你怎么能这样做呢 这就是我所做的 编辑 自从我发现之前的答案有很多无用
  • Node.js Firestore 查询选择字段路径列表

    我尝试创建并返回一个新的 Query 实例 该实例将字段掩码应用于结果并仅返回指定的字段子集 当我使用时 let query firestore collection col select field1 field2 field3 get
  • ANDROID_HOME 未设置(VSTS 代理在 OS X 上作为服务运行)

    我已经在 MacBook Pro 上配置了 VSTS 代理 当我手动运行它时 使用 run sh 但是 当我将 VSTS 代理配置为作为服务运行时 使用 svc sh install and svc sh start 并在 VSTS 中对新
  • Fabric.js + 谷歌字体

    可以用吗Fabric js https github com kangax fabric js wiki How to render text使用网络字体 而不附加 Cufon 库及其字体 我可以使用标准画布功能轻松做到这一点 所以我想知道
  • 如何将 Nullable DateTime 变量的 null 值转换为 DbNull.Value

    我有一个可为空的日期时间变量 我想将它写入 SQL DB 当我尝试插入时 如果变量有值就没有问题 但如果它没有值 插入就会因错误而中断 我想问 如何通过DbCommand参数向Sql插入可为空的DateTime P S Sql 列也可以为空
  • onStartJob 和 onStopJob 无法在 android 中运行后台线程

    实际上我想使用 JobScheduler 进行通知 无论应用程序是否处于活动状态 我是 android 新手 首先只是尝试运行后台 AsyncTask 来检查它是否工作正常 但它不起作用 这是我的 JobService 代码 public
  • PyCharm - 作者是否出现在导入之前?

    当您创建新的 python 文件并添加新的导入时 PyCharm 会尽可能自动添加导入和 author 标签 但是 默认情况下 author 标签将始终出现在任何导入的下方 在我看来 author 标签应该位于文件的顶部 我也可以在其中放置
  • 在 RoR 中哪里可以重新开放课程

    我正在尝试重新打开StringRails 中的类并添加更多方法供我的应用程序使用 编写代码不是问题 我的问题是该代码应该放在哪里 对我来说 在不同的模型文件中重新打开一个类是没有意义的 因为它实际上与任何模型都没有任何关系 我想也许在某个地
  • LINQ - 组合多个列表以形成一个新列表并按键对齐它们?

    我有两个不同列的列表 但每个列表都有一个具有相同键的公共列 如何将它们组合成一个新列表 即 public class TradeBalanceBreak public int CommID get set public int CPFirm