Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用Linq按日期获取数据_C#_Linq_Datetime - Fatal编程技术网

C# 使用Linq按日期获取数据

C# 使用Linq按日期获取数据,c#,linq,datetime,C#,Linq,Datetime,我有一个以下的列表 public class Item { public string Link { get; set; } public string Title { get; set; } public string Content { get; set; } public DateTime PublishDate { get; set; } public FeedType FeedType { get; set; } public Item

我有一个以下的列表

public class Item
{
    public string Link { get; set; }
    public string Title { get; set; }
    public string Content { get; set; }
    public DateTime PublishDate { get; set; }
    public FeedType FeedType { get; set; }

    public Item()
    {
        Link = "";
        Title = "";
        Content = "";
        PublishDate = DateTime.Today;
        FeedType = FeedType.RSS;
    }
}
这只是一个经过解析的RSS提要,我现在希望能够查询列表,以仅提取PublishDate为今天的项目


但是我有点迷路了。。。谁能解释一下吗?

如果我理解正确,这里的目标是在比较时去掉时间

扩展方法语法

var today = DateTime.Today;
items.Where( item => item.PublishDate.Date == today );
查询语法

var today = DateTime.Today;
from item in items
where item.PublishDate.Date == Today
select item
List itemList=。。。;
ListItem筛选项目
=itemList.Where(it=>it.PublishDate>=DateTime.Today).ToList()

在午夜前后查询时,可能会得到不一致的结果。很好。今天应该抽到一个地方。另外,我以前也没有见过Today属性。编辑以包括@albin feedback和他的方式cooler user of Today而不是DateTime.Now.DateIt值得注意的是,编辑用于提取DateTime.Today以及使用Today而不是DateTime.Now来自此答案。不是在我原来的帖子里。谢谢@Albin我今天学到了一些新东西!
DateTime today = DateTime.Today;
var todayItems = list.Where(item => item.PublishDate.Date == today);
List<Item> itemList = ...;
ListItem<Item> filtered items 
                 = itemList.Where(it => it.PublishDate >= DateTime.Today).ToList()