Entity framework 获取两个日期之间的总天数Linq C#
我想使用带有实体框架6的Linq C#获得两个日期之间的总天数。我的问题是我需要where子句条件,并且发现很难减去日期。我运行下面的代码时出错。如有任何帮助,我们将不胜感激Entity framework 获取两个日期之间的总天数Linq C#,entity-framework,Entity Framework,我想使用带有实体框架6的Linq C#获得两个日期之间的总天数。我的问题是我需要where子句条件,并且发现很难减去日期。我运行下面的代码时出错。如有任何帮助,我们将不胜感激 var finalexams = report.Select(x => new ReportVieModel { EnglishDates = x.admin.mastertab
var finalexams = report.Select(x =>
new ReportVieModel
{
EnglishDates = x.admin.mastertablebles.Where(d => d.EndDate == null).Select(s => DbFunctions.DiffDays(s.beginDate, DateTime.Today)),
}).Distinct();
EnglishDate代表什么类型的数据 我看到的唯一条件是最终日期可以为null,我想这将返回多个值,您需要一个列表 我不明白您是否想要一个包含开始日期和天数的列表,因为您可以根据模型执行此操作: 型号:
public class ReportViewModel
{
public DateTime? Date { get; set; }
public int? NumberDays { get; set; }
}
List<ReportViewModel> list = (from p in x.admin.mastertablebles
where p.EndDate == null
select new ReportViewModel() { Date = p.beginDate, NumberDays = DbFunctions.DiffDays(p.beginDate, DateTime.Now) })
.Distinct().ToList();
var numberDays = (from p in x.admin.mastertablebles
where p.EndDate == null
select DbFunctions.DiffDays(p.beginDate, DateTime.Now))
.Distinct().ToList();
LINQ:
public class ReportViewModel
{
public DateTime? Date { get; set; }
public int? NumberDays { get; set; }
}
List<ReportViewModel> list = (from p in x.admin.mastertablebles
where p.EndDate == null
select new ReportViewModel() { Date = p.beginDate, NumberDays = DbFunctions.DiffDays(p.beginDate, DateTime.Now) })
.Distinct().ToList();
var numberDays = (from p in x.admin.mastertablebles
where p.EndDate == null
select DbFunctions.DiffDays(p.beginDate, DateTime.Now))
.Distinct().ToList();
你犯了什么错误?尝试在查询之前将
DateTime.Today
移动到变量中。该属性不会转换为SQL。