Asp.net mvc .net核心EF Linq选择两个日期之间的位置

Asp.net mvc .net核心EF Linq选择两个日期之间的位置,asp.net-mvc,entity-framework,linq,asp.net-core,Asp.net Mvc,Entity Framework,Linq,Asp.net Core,我正在将现有的MVC5项目迁移到.NETCore。我使用以下方法获得两个日期之间的项目列表: var result = _context.Model.Where(c => c.ID == ID) .Where(c=> c.Day >= fromDate) .Where(c => c.Day <= toDate).Select(model => new {

我正在将现有的MVC5项目迁移到.NETCore。我使用以下方法获得两个日期之间的项目列表:

var result = _context.Model.Where(c => c.ID == ID)
             .Where(c=> c.Day >= fromDate)
             .Where(c => c.Day <= toDate).Select(model => new
            {
                Item1 = model.Item1
                Item2 = mdoel.Item2
            }).OrderBy(c => c.Day);
如果我删除Where(c=>c.Day>=fromDate),它会工作吗


EF core中的大于或等于有什么特殊要求吗?

您确定使用了相同的表格内容吗?如果一个查询在标准EF中工作,但在EF Core中不工作,则结果集可能已更改(抓取并尝试在SQL中运行相同的查询),因此
。其中(c=>c.Day>=fromDate)
条件不再产生任何结果。如果出现该错误,则仅意味着可枚举项没有任何项。查询只是过滤掉所有内容,因此不会返回任何内容。您的查询不正确,或者您认为数据库中的数据实际上不存在。谢谢Tetsuya和Chris,我使用的是DateTime fromDate=toDate.AddMonths(-1)。没有数据,将尝试找出更好的设置fromDate的方法。您可以将其用作查询var result=\u context.Model。其中(c=>c.Day>=fromDate&&c=>c.Day c.ID==ID))。选择(Model=>new{Item1=model.Item1 Item2=mdoel.Item2}).OrderBy(c=>c.D)是否确定使用了相同的表内容?如果一个查询在标准EF中工作,但在EF核心中不工作,则结果集可能已更改(抓取并尝试在SQL中运行相同的查询),因此
。其中(c=>c.Day>=fromDate)
条件不再产生任何结果。如果出现该错误,则表示可枚举项没有任何项。查询只是过滤掉所有内容,因此不会返回任何内容。要么您的查询不正确,要么您认为数据库中的数据实际上不存在。谢谢Tetsuya和Chris,我使用的是DateTime fromDate=toDate.AddMonths(-1)。没有数据,将尝试找出更好的设置fromDate的方法。可以将其用作查询变量结果=\u context.Model。其中(c=>c.Day>=fromDate&&c=>c.Day c.ID==ID))。选择(Model=>new{Item1=model.Item1-Item2=mdoel.Item2}).OrderBy(c=>c.D)
Empty = "Enumeration yielded no results"