我想使用dataview行过滤器来过滤数据表中的数据,数据库的列名称月份类似于“01-04-2012 00:00:00”。我想用这种格式获取数据..
这是我的部分代码
dv1 = dtable.DefaultView;
DateTime start = new DateTime(DateTime.Now.Year, 4, 1,0,0,0);
dv1.RowFilter =Convert.ToString(start); //"Month = '04-01-2011 00:00:00'";
它返回以下错误:语法错误:'00'运算符后缺少操作数。我无法修复此错误,请帮我这样做...
答案 0 :(得分:3)
您需要将日期时间值括在#
中。您还必须说明要与此值进行比较的列。
例如:
dv1.RowFilter = String.Format(CultureInfo.InvariantCulture.DateTimeFormat,
"Date = #{0}#", start);
(其中Date
是datetime-column的实际名称)
答案 1 :(得分:0)
查看代码时,您缺少要过滤的列的名称。
例如:
dv1.RowFilter = string.Format("PurchaseDate = '{0}'", Convert.ToString(start));
假设PurchaseDate是视图内的日期,数据将使用过滤。