我有下面的linq语句:
consumers = data.Select(x => new Consumer()
{
firstname = x.firstname,
lastname = x.lastname,
house = x.sublocationid,
floornr = x.floor,
appnr = x.roomnr
})
.Distinct()
.ToList();
不知何故,这并没有返回不同的数据集。我假设它与对象的选择有关?因此,不同的函数不是直接比较属性,而是比较对象?不幸的是,我并不完全理解它,但在ms sql中,这条语句工作得很好。
我还尝试了以下方法,但它没有返回List对象,我需要使用var或其他方法,我需要一个Consumer()对象的List。
consumers = data.Select(x => new Consumer()
{
firstname = x.firstname,
lastname = x.lastname,
house = x.sublocationid,
floornr = x.floor,
appnr = x.roomnr
})
.GroupBy(x => new { x.firstname, x.lastname, x.haus, x.etage, x.appnr })
.ToList();
2条答案
按热度按时间fae0ux8s1#
hfsqlsce2#
我通过使用MoreLinq中的DistinctBy找到了另一个解决方案。