我正在使用 Linq to Sql 获取两个列表的并集。使用列表 1 和列表 2:
var tr = List1.Union(List2).ToList();
联合工作正常,但问题是它正在检查每一列并删除我想要的一些行。所以我想知道是否有一种方法可以仅基于一列执行联合,就像我们说的id
,每个列表?
就像是:
var t = List1.id.Union(List2.id).ToList();
这不起作用,但我想知道是否有办法做到这一点,无论是使用 LINQ 还是 T-SQL
你应该使用这个Union() 重载(使用自定义相等比较器),或类似这样的内容:
list1.Concat(list2).GroupBy(x => x.DateProperty).Select(m => m.First());
第一个解决方案当然更有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)