c# - 'Distinct' 操作无法应用于指定参数的集合ResultType

标签 c# sql linq entity-framework linq-to-sql

我想知道为什么我在 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

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

最佳答案

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

尝试使用

something = something.Distinct().ToList();

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

something = something.GroupBy(x => x.PropertyToCompare).Select(x => x.First());

关于c# - 'Distinct' 操作无法应用于指定参数的集合ResultType,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20540541/

相关文章:

c# - 如何从 Web Api 获取自定义错误消息到 jQuery.ajax?

c# - 未找到数据源名称且未指定默认驱动程序

sql - 在 POSTGRES 中高效的 SQL 表连接或查询?如何以及做什么?

c# - 使用 LINQ。有两个不同的列表。如何识别不匹配的对象

asp.net-mvc - 在 MVC 6 Controller 中创建 session (使用 View ,使用 Entity Framework )

c# - Windows Phone 8.1 通过按住选择 ListView 中的项目

c# - 以编程方式获取内容文件和主要输出

sql - 将 SQL 查询中的列插入到 HPE UFT 中的数据列中

sql - SELECT IDENT_CURRENT (‘tablename’ ) 在 Oracle 中

c# - foreach 中的 Linq 查询