2017-08-03 95 views
-2

我有2个日期列表。C#2与匹配记录的列表

List<DateTime> 1st; 
List<DateTime> 2nd; 

我想要在这两个日期内计算匹配日期。 我可以使用foreach逻辑&得到结果。

但是实现这个最简单的方法是什么?

+4

在问“最简单的方法是什么”之前,只需显示* your *方式。你必须提供一些自己的想法才能在这里获得帮助,我们没有做你的工作。特别是你应该定义你认为“容易”的东西。只有几行代码?没有任何框架代码?没有...? – HimBromBeere

+0

@HimBromBeere我已经注意到了这个问题中的foreach逻辑。很少有人会不知道简单的'foreach'逻辑,所以我没有粘贴代码。 – Anup

+0

为什么这不足以满足您的需求?这显然很容易(因为你只注意到少数人不知道“foreach”的简单逻辑)并且完成了它的工作。为什么需要另一种(可能更困难)的方法?你认为容易的是纯粹的自以为是。 – HimBromBeere

回答

3
using System.Linq; 
1st.Intersect(2nd).Count(); 

这应该有效。

您也可以使用linq进行内连接

+2

虽然这是一个正确的答案,但OP应该先花一些精力提出自己的解决方案。 –

+0

请注意使用默认的IEqualityComparer比较日期... 2日期时间必须等于万分之一秒:https://msdn.microsoft.com/en-us/library/system.datetime.ticks (v = vs.110)的.aspx。考虑传入您自己的IEqualityComparer。 –

+0

不要说这基本上是一个骗局https://stackoverflow.com/questions/7187996/intersect-two-lists-in-c-sharp –