Pet*_*ter 12 c# dataview datetime date-format rowfilter
我正在摸索一些相当愚蠢而又显然很难的东西.
DataView dvFormula = dsFormula.Tables[0].DefaultView;
dvFormula.RowFilter = "'" + startDate.ToString("yyyyMMdd") + "' < EndDate OR EndDate = '19000101'";
dvFormula.Sort = "FromDate ASC";
Run Code Online (Sandbox Code Playgroud)
结果是这样的:
无法对System.String和System.DateTime执行'<'操作.
请告诉我解决这个问题的最佳方法是什么.
非常感激!
Dan*_*Dan 24
你需要用#包装日期,而不是撇号.
dvFormula.RowFilter = "#" + startDate.ToString("MM/dd/yyyy") + "# < EndDate OR EndDate = #1/1/1900#";
Run Code Online (Sandbox Code Playgroud)
小智 11
这是解决方案.试试这个:
filter = " (Date >= #" +
Convert.ToDateTime(txtFromDate.Text).ToString("MM/dd/yyyy") +
"# And Date <= #" +
Convert.ToDateTime(txtToDate.Text).ToString("MM/dd/yyyy") +
"# ) ";
Run Code Online (Sandbox Code Playgroud)