繁体   English   中英

使用 LINQ 过滤两个日期之间的数据

[英]Filter data between two dates using LINQ

如何过滤两个日期时间之间的数据。 在这里,我正在过滤目录中的文本文件长度。我需要在所选日期之间过滤文本文件。

DateTime startDate = dateTimePicker1.Value;
DateTime endDate = dateTimePicker2.Value;
var queryList1Only = from i in di.GetFiles("*.txt", SearchOption.AllDirectories)  
                     select i.Length;

有什么建议吗?

使用 Where 子句:

DateTime startDate = dateTimePicker1.Value;
DateTime endDate = dateTimePicker2.Value;

var queryList1Only = from i in di.GetFiles("*.txt", SearchOption.AllDirectories) 
                     where i.GetCreationTime() > startDate && i.GetCreationTime() < endDate
                     select i.Length;

您可以使用GetLastWriteTimeGetLastAccessTime代替GetCreationTime

我建议使用 where 子句查看一些示例,以便全面了解它在此处的工作原理。

那么, where子句怎么样?

var query = from i in di.GetFiles("*.txt", SearchOption.AllDirectories) 
            where (i.GetCreationTime() > startDate && i.GetCreationTime() < endDate)
            select i.Length;
from fi in new DirectoryInfo(@"c:\path").EnumerateFiles("*.txt")
where fi.CreationTime > startDate and fi.CreationTime < endDate)
select fi.FullName;

这对我有用

var data = (从 dataperiod.DateStart <= (DateTime)finalDayNovelty && dataperiod.DateEnd >= (DateTime)initialDayNovelty select dataperiod ).ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM