0

我有一个搜索功能,其中也包括日期。我遇到的问题是:

例如,当您在搜索功能中添加 2 个日期时:

2013-04-10 和 2013-04-11 它仅显示 2013-04-10 直到 23:59 或者如果我搜索相同的日期

2013-04-10 和 2013-04-10 它没有找到任何命中。

代码是这样的:

Func<string, string> emptyToNull = s => String.IsNullOrWhiteSpace(s) ? null : s.Trim();

var from = emptyToNull(input.CreditApplicationSearchFromDate);
var to = emptyToNull(input.CreditApplicationSearchToDate);

from = from ?? DateTime.Today.ToString("yyyy-MM-dd");
to = to ?? DateTime.Today.ToString("yyyy-MM-dd");

我想这样做:

Func<string, string> emptyToNull = s => String.IsNullOrWhiteSpace(s) ? null : s.Trim();

var from = emptyToNull(input.CreditApplicationSearchFromDate);
var to = emptyToNull(input.CreditApplicationSearchToDate);

from = from ?? new DateTime().ToString("yyyy-MM-dd HH:mm");
to = to ?? new DateTime().ToString("yyyy-MM-dd HH:mm");

但不好,当我搜索例如 2013-04-10 和 2013-04-10 以查找全天的点击时,我不知道如何显示

4

1 回答 1

0

您需要指定一整天的开始和结束时间,或者更好的是 - 第二天的开始:

from = from ?? DateTime.Now.Date.ToString("yyyy-MM-dd");
to = to ?? new DateTime.Now.Date.AddDays(1).ToString("yyyy-MM-dd");

请注意使用Now.Date没有时间组件的当前日期(new DateTime()不会编译,所以我真的不知道你从哪里得到那段代码)。

于 2013-05-07T21:45:45.887 回答