【发布时间】:2016-07-14 08:49:58
【问题描述】:
我有以下问题: 我有两个 foo 类型的列表。 现在我想遍历两个列表,因为在第二个列表中我已经更改了两个属性的值。 为了澄清我的意思,这是我知道它会起作用的代码:
foreach(foo bar in list_1) {
foreach(foo bar2 in list_2) {
if (bar.ID == bar2.ID) {
bar.name = bar2.name;
bar.color = bar2.color;
}
}
}
如您所见,list_2 中的属性确实具有与 list_1 中的其他值相同的值,但我在 list_1 中也需要它们。 它会这样工作,但我想知道是否有更简单的方法来做到这一点(也许使用 LinQ?)
亲切的问候, Asat0r
【问题讨论】:
-
这可能会在codereview.stackexchange.com上得到更好的接受
-
LINQ 在这种情况下会非常有用。看看这个stackoverflow.com/questions/17323804/…
-
更简单 - 不。更快 - 当然。
-
ID在列表中是唯一的吗? -
@Mainak:我尝试了这个解决方案,但无法让它在这种情况下正常工作。尽管 Dmitry Bychenko 的回答对我来说效果很好。不过还是谢谢你:)
标签: c# visual-studio linq logic