Linq-从另一个匿名列表中删除一个匿名列表

标记

我已经看到了许多答案,但似乎无法使它们起作用:

 var numinqtoday = bc.SSRecs.Where(x => x.DateTime == id).Select(n => new
       {
           refer = n.@ref
       }).GroupBy(x => x.refer).ToList();

 var numinqprev = bc.SSRecs.Where(x => x.DateTime < id).Select(n => new
       {
           refer = n.@ref
       }).GroupBy(x => x.refer).ToList();


 var filtered = numinqtoday.Except(numinqprev).ToList();

在我上面的代码中:

 numinqtoday.Count() = 184
 numinqprev.Count() = 155

 filtered.Count() = 184

我已经检查过,并且在numinqtoday内的numinqprev中肯定存在-因此看来。除了在放入过滤器之前未将其删除。

谁能告诉我我要去哪里错了?

谢谢,

标记

乔恩·斯基特

您在那里有一个列表-我怀疑您会发现一个组永远不会等于另一个组。我怀疑您要在分组之前执行Except操作例如:

var numinqtoday = bc.SSRecs.Where(x => x.DateTime == id).Select(n => new
   {
       refer = n.@ref
   }).ToList();
var numinqprev = bc.SSRecs.Where(x => x.DateTime < id).Select(n => new
   {
       refer = n.@ref
   }).ToList();
var filtered = numinqtoday.Except(numinqprev).GroupBy(x => x.refer).ToList();

另一种选择是创建一组密钥,并使用Where

// Code as per your original, including the GroupBy calls. Change the string
// part as per the type of refer, which we don't know...
var keys = new HashSet<string>(numinqprev.Select(g => g.Key));
var filtered = numinqtoday.Where(g => !keys.Contains(g.Key)).ToList();

另请注意,如果只有一个属性,则使用匿名类型没有多大意义。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Linq-从另一个匿名列表中删除一个匿名列表

来自分类Dev

从子列表中删除与Linq匹配另一个子列表的项目

来自分类Dev

从子列表中删除与Linq匹配另一个子列表的项目

来自分类Dev

Linq查询-在另一个列表中列出

来自分类Dev

Linq,将列表加入另一个列表中的最后一个项目

来自分类Dev

使用LINQ将列表按列表中的另一个列表分组

来自分类Dev

LINQ选择列表,其中子列表包含另一个列表中的项目

来自分类Dev

linq排序另一个列表的子集

来自分类Dev

使用linq从另一个列表获取的索引值过滤一个列表

来自分类Dev

Linq一个列表从另一个列表中选择多个项目

来自分类Dev

如何使用 Linq 将一个列表投影到另一个列表?

来自分类Dev

LINQ通过另一个值获取包含在另一个列表中的对象的结果

来自分类Dev

C#中的LINQ。检查一个列表是否包含另一个列表中的元素

来自分类Dev

Linq to Entities-过滤一个列表中属于另一个列表的任何项目

来自分类Dev

Linq位置列表包含另一个列表中的项目

来自分类Dev

使用LINQ C#合并另一个列表中的列表

来自分类Dev

Linq检查列表是否在另一个列表中

来自分类Dev

如何使用linq将数据列表分组到另一个列表中?

来自分类Dev

如何在另一个列表中过滤列表MVC LINQ

来自分类Dev

使用LINQ从另一个属性分组的列表中删除除最大值以外的所有值

来自分类Dev

将数据分配给Linq中另一个List的子列表

来自分类Dev

使用Linq从另一个表中按记录数排序获取列表

来自分类Dev

使用LINQ将数据从一个列表复制到另一个列表

来自分类Dev

使用linq将一个列表的副本复制到另一个列表

来自分类Dev

使用linq将一个列表的值与另一个列表的值相关联

来自分类Dev

LinQ查询计算另一个对象列表中一个对象列表中元素的数量

来自分类Dev

使用LINQ将数据从一个列表复制到另一个列表

来自分类Dev

Linq可以将int列表投影到T类的另一个列表吗

来自分类Dev

Linq根据另一个列表查询对象列表的结果

Related 相关文章

  1. 1

    Linq-从另一个匿名列表中删除一个匿名列表

  2. 2

    从子列表中删除与Linq匹配另一个子列表的项目

  3. 3

    从子列表中删除与Linq匹配另一个子列表的项目

  4. 4

    Linq查询-在另一个列表中列出

  5. 5

    Linq,将列表加入另一个列表中的最后一个项目

  6. 6

    使用LINQ将列表按列表中的另一个列表分组

  7. 7

    LINQ选择列表,其中子列表包含另一个列表中的项目

  8. 8

    linq排序另一个列表的子集

  9. 9

    使用linq从另一个列表获取的索引值过滤一个列表

  10. 10

    Linq一个列表从另一个列表中选择多个项目

  11. 11

    如何使用 Linq 将一个列表投影到另一个列表?

  12. 12

    LINQ通过另一个值获取包含在另一个列表中的对象的结果

  13. 13

    C#中的LINQ。检查一个列表是否包含另一个列表中的元素

  14. 14

    Linq to Entities-过滤一个列表中属于另一个列表的任何项目

  15. 15

    Linq位置列表包含另一个列表中的项目

  16. 16

    使用LINQ C#合并另一个列表中的列表

  17. 17

    Linq检查列表是否在另一个列表中

  18. 18

    如何使用linq将数据列表分组到另一个列表中?

  19. 19

    如何在另一个列表中过滤列表MVC LINQ

  20. 20

    使用LINQ从另一个属性分组的列表中删除除最大值以外的所有值

  21. 21

    将数据分配给Linq中另一个List的子列表

  22. 22

    使用Linq从另一个表中按记录数排序获取列表

  23. 23

    使用LINQ将数据从一个列表复制到另一个列表

  24. 24

    使用linq将一个列表的副本复制到另一个列表

  25. 25

    使用linq将一个列表的值与另一个列表的值相关联

  26. 26

    LinQ查询计算另一个对象列表中一个对象列表中元素的数量

  27. 27

    使用LINQ将数据从一个列表复制到另一个列表

  28. 28

    Linq可以将int列表投影到T类的另一个列表吗

  29. 29

    Linq根据另一个列表查询对象列表的结果

热门标签

归档