我想知道为什么我在stackoverflow上找不到这个错误。在Linq to SQL中,我选择了一个匿名对象,如
var something = from a in .....
......
......
select new
{
myParameter = a.Something
myListParameter = (from b in ........
select b)
}
.
.
.
.
something = something.Distinct(); //This is giving error在上面选择匿名类型对象时,在其中一个属性中,我选择了另一个列表。我猜这可能是导致问题的原因。我想知道是否有解决方法。
发布于 2013-12-12 18:14:50
这可能是因为您的查询返回了多个结果,
尝试使用
something = something.Distinct().ToList();如果适用于您的要求,您可以使用变通方法。
something = something.GroupBy(x => x.PropertyToCompare).Select(x => x.First());发布于 2013-12-12 18:17:16
无法区分()匿名类型,因为每个对象将保存在不同的内存空间中,因此不能相等。
您可能需要实现IEquatable才能按照以下响应使用Distinct():Distinct not working with LINQ to Objects
https://stackoverflow.com/questions/20540541
复制相似问题