0
我有一个项目的IList数据的列表,看起来榜单:如何筛选重复的列表项
GenId TestMode
1 0
1 1
3 0
3 1
4 NULL
2 NULL
我想从我的列表中有测试模式== 0如果同一genid,配置除去genid,配置指数有一个测试模式== 1.
确实有人有一个简洁的方式做到这一点?
我有一个项目的IList数据的列表,看起来榜单:如何筛选重复的列表项
GenId TestMode
1 0
1 1
3 0
3 1
4 NULL
2 NULL
我想从我的列表中有测试模式== 0如果同一genid,配置除去genid,配置指数有一个测试模式== 1.
确实有人有一个简洁的方式做到这一点?
LINQ非常擅长针对对象集合的运行操作。下面的查询应该给你你在找什么:
var query = list.Where(i => i.TestMode == 1 ||
!list.Exists(i2 => i2.GenId == i.GenId && i2.TestMode == 1));
foreach (var item in query) {
// do something with items.
}
这里做的事情就是找地方TESTMODE等于1项(包括如果有),或以其他方式检查是否有另一其中TestMode等于1的元素,并排除该记录是否存在。
这样做的工作 - 谢谢。 – CurlyFro 2009-11-09 19:40:36