【发布时间】:2017-06-12 03:00:02
【问题描述】:
我知道这是一个老问题,但我还是有点困惑,请教我怎么做。
我在 datagridview 中加载了一个带有条件的数据表,如下面的代码,事情是,当 FromDate 和 ToDate 是同一个月时,它运行良好。不同的月份使 datagridview 为空。
FromDate 和 ToDate 在日历中被选中到 2 文本框中。
private void LoadWorkRequestSearch()
{
DateTime datefrom = Convert.ToDateTime(textdatefrom.Text.Trim());
DateTime dateto = Convert.ToDateTime(textdateto.Text.Trim());
string sql = "";
sql = "Select DateCreated, ri.RequestID, RequesterID, RequestStatus, RequestDetail, SentTo, EstimateCompleteDate, ru.StartedDate, ru.ProcessTime From [RequestInfo] ri ";
sql = sql + " LEFT JOIN [StatusRequest] sr ON sr.RequestStatusID = ri.Status";
sql = sql + " LEFT JOIN [RequestUsers] ru ON ru.RequestID = ri.RequestID ";
sql = sql + " Where DateCreated between '" + datefrom.ToShortDateString() + "' and '" + dateto.ToShortDateString() + "'";
_dtworkrequestsearch = _cls_DB.QueryDataTable(sql);
G1.DataSource = _dtworkrequestsearch;
}
我尝试了我搜索的所有内容,但没有按照我想要的方式工作,请帮助。
谢谢,
【问题讨论】:
-
textdatafrom.Text和testdateto.Text的值是多少?您的代码示例没有给我们任何重现问题的方法。在这种情况下,请使用硬编码字符串,以便我们查看值是什么。您输入的日期格式是否可能与预期的不同?即dd/mm/yyyy而不是mm/dd/yyyy? -
DateCreated 表列是日期数据类型吗?
-
@RufusL 是的,
textdate的格式是dd/MM/yyyy完全适合我的本地数据库 -
@JeremyThompson
DateCreate是一个日期列,在 sql 中数据类型是 varchar(10)
标签: c# winforms date datagridview