首页 > 解决方案 > 在日期之间执行搜索时出现 ASP .NET MVC 错误

问题描述

在此处输入图像描述

帮我解决这个错误。

在此处输入图像描述

当第一次加载没有日期和日期的值时,它可以工作。但是,当往返日期具有值时,错误会显示注释:数据库中的 Nullable dateTime to。

谢谢。

标签: asp.net-mvc

解决方案


尝试替换出现错误的这一行:

var report = db.qryItemsMR_emp.Where(m => m.DepartmentShortname==Search && (DateTime?)m.mr_date >= fromd && (DateTime?)m.mr_date <= tod).List();

当 Nullable 具有值时,将 Nullable DateTime 与 Datetime 进行比较会产生错误。

或者

或者写两个不同的检查 whenfromd.HasValuetod.HasValueor second when for nullable like :

if(fromd.HasValue && tod.HasValue )
    var report = db.qryItemsMR_emp.Where(m => m.DepartmentShortname==Search && m.mr_date >= fromd.Value && m.mr_date <= tod.Value).List();
else
    var report = db.qryItemsMR_emp.Where(m => m.DepartmentShortname==Search).List();

您将需要report使用静态类型在外部声明 if & else,而不是var稍后使用。我不确定什么是回报类型,所以留给你。


推荐阅读