DataView中的Filter DateTime不筛选分钟和秒

本文关键字:分钟 筛选 中的 Filter DateTime DataView | 更新日期: 2023-09-27 18:01:12

我有以下代码(一个按DateTime过滤的DataView(:

dv = new DataView(
        dataTable1,
        "DateTime >= '" + Convert.ToDateTime("7/5/2011 9:21:00 AM") + "'",
        "ID ASC", DataViewRowState.CurrentRows);

我的数据表1由DateTime列中的以下数据组成:

  • A: "2011年7月5日上午9:20:59">
  • B: "2011年7月5日上午9:21:00">
  • C: "2011年7月5日上午9:21:01">
  • D: "2011年7月5日上午9:22:00">

据推测,只有A应该被过滤。但我的代码也过滤了ABC,并且只返回D

怎么了?

DataView中的Filter DateTime不筛选分钟和秒

试试这个

dv = new DataView(
    dataTable1,
    "CONVERT(DateTime, System.DateTime) >= '" + Convert.ToDateTime("7/5/2011 9:21:00 AM") + "'",
    "ID ASC", DataViewRowState.CurrentRows);

尝试用#将日期字符串括起来。例如:

dv = new DataView(
        dataTable1,
        "DateTime >= #" + Convert.ToDateTime("7/5/2011 9:21:00 AM") + "#",
        "ID ASC", DataViewRowState.CurrentRows);

移除convert.todatetime

你可以试试这个

String date1 =String.Empty ;
date1 = "7/5/2011 9:21:00 AM";
dv = new DataView(dataTable1,"DateTime >= #" + date1 + "#", "ID ASC", DataViewRowState.CurrentRows);