c# - 使用 LINQ (C#) 从两个不同的自定义列表中查找所有项目

标签 c# linq

我有两个列表...

List<ObjectA> listA
List<ObjectB> listB

两者都有一个 int 属性 ID,这是唯一的...

我想从 listA 中获取所有具有 listA[x].ID = listB[x].ID 的对象,使用 LINQ...

谢谢

最佳答案

您需要使用 .Join(...) 函数。

在查询语法中,它看起来像这样:

var result = from a in listA
             join b in listB on a.ID equals b.ID
             select new { /* properties you want */ };

在标准的 C# 语法中,它看起来像这样:

var result = listA.Join(listB, a => a.ID, b => b.ID, (a, b) => new { /* properties you want */ });

关于c# - 使用 LINQ (C#) 从两个不同的自定义列表中查找所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3469435/

相关文章:

c# - 如何从 List<T> 中获取第 n 个项目?

.net - 在LINQPad中用什么数据可视化控件来呈现结果?

c# - Linq 加入 Group By

c# - 系统.Web.HttpException : Cannot have multiple items selected in a DropDownList

javascript - Web 方法仅在标记为静态时才有效,否则无效

C# volatile double

c# - 匿名类型的 linq 查询

c# - 为什么无法在 LinQ 中使用 SqlFunctions 将 int 转换为 string?

c# - 我如何设置此文本的样式?

c# - 异常:指定的 Visual 不是此 Visual 的祖先