【发布时间】:2022-01-21 21:30:30
【问题描述】:
我有两个这样声明和填写的列表:
List<MyType> list1 = new List<MyType>();
List<MyType> list2 = new List<MyType>();
list1.Add(new MyType() { PropertyA = "Value1", PropertyB = "00" });
list1.Add(new MyType() { PropertyA = "Value1", PropertyB = "06" });
list1.Add(new MyType() { PropertyA = "Value1", PropertyB = "08" });
list1.Add(new MyType() { PropertyA = "Value1", PropertyB = "11" });
list1.Add(new MyType() { PropertyA = "Value1", PropertyB = "12" });
list1.Add(new MyType() { PropertyA = "Value2", PropertyB = "00" });
list1.Add(new MyType() { PropertyA = "Value2", PropertyB = "06" });
list1.Add(new MyType() { PropertyA = "Value2", PropertyB = "09" });
list1.Add(new MyType() { PropertyA = "Value2", PropertyB = "11" });
list1.Add(new MyType() { PropertyA = "Value2", PropertyB = "13" });
list1.Add(new MyType() { PropertyA = "Value2", PropertyB = "14" });
list1.Add(new MyType() { PropertyA = "Value3", PropertyB = "09" });
list1.Add(new MyType() { PropertyA = "Value3", PropertyB = "10" });
list1.Add(new MyType() { PropertyA = "Value3", PropertyB = "11" });
list1.Add(new MyType() { PropertyA = "Value3", PropertyB = "12" });
list1.Add(new MyType() { PropertyA = "Value3", PropertyB = "13" });
list1.Add(new MyType() { PropertyA = "Value3", PropertyB = "14" });
list2.Add(new MyType() { PropertyA = "Value1" });
list2.Add(new MyType() { PropertyA = "Value2" });
list2.Add(new MyType() { PropertyA = "Value3" });
我的目标是使用 C# 中的 LINQ 从 list1 中获取唯一的带有 PropertyB 的记录,该记录存在于所有具有 list2.PropertyA == list1.PropertyA 的元素中强>。
在我的示例中,我必须得到这个值:PropertyB = "11"
我怎样才能得到这个值?
提前致谢。
【问题讨论】:
-
在你的例子中,你也得到 14
-
@CaiusJard:是的,对不起,错误的例子。我已经纠正了。谢谢