首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“Distinct”操作不能应用于指定参数的集合ResultType

“Distinct”操作不能应用于指定参数的集合ResultType
EN

Stack Overflow用户
提问于 2013-12-12 18:11:26
回答 2查看 11.5K关注 0票数 3

我想知道为什么我在stackoverflow上找不到这个错误。在Linq to SQL中,我选择了一个匿名对象,如

代码语言:javascript
复制
var something = from a in .....
    ......
    ......
    select new 
    { 
        myParameter = a.Something 
        myListParameter = (from b in ........
                           select b)
    }
.
.
.
.
something = something.Distinct(); //This is giving error

在上面选择匿名类型对象时,在其中一个属性中,我选择了另一个列表。我猜这可能是导致问题的原因。我想知道是否有解决方法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-12 18:14:50

这可能是因为您的查询返回了多个结果,

尝试使用

代码语言:javascript
复制
something = something.Distinct().ToList();

如果适用于您的要求,您可以使用变通方法。

代码语言:javascript
复制
something = something.GroupBy(x => x.PropertyToCompare).Select(x => x.First());
票数 10
EN

Stack Overflow用户

发布于 2013-12-12 18:17:16

无法区分()匿名类型,因为每个对象将保存在不同的内存空间中,因此不能相等。

您可能需要实现IEquatable才能按照以下响应使用Distinct():Distinct not working with LINQ to Objects

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20540541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档