计算与LINQ

时间:2017-11-12 20:34:11

标签: c# linq

我尝试使用How to count the number of elements that match a condition with LINQ中的代码 它有效,但我的结果总是等于列表中的元素数量。我的清单上有10个日期,结果是10个。我需要计算具有特定日期的元素。

var zz = both.ToList(); // dates list
int con = list1.Where(p => list1.Contains(zz[0])).Count();
Console.WriteLine("count: " + con);

1 个答案:

答案 0 :(得分:2)

您在代码中使用list两次作为Where子句的来源以及Contains方法的来源,因此会产生意外结果。而应该是:

int con = list1.Where(p => zz.Contains(p)).Count();

而不是:

int con = list1.Where(p => list1.Contains(zz[0])).Count();