2012-03-12 36 views
0

我想使用dataview行過濾器過濾數據表中的數據Datatable的列名稱爲月份「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

參考這個帖子: [此處輸入鏈接的描述] [1] [1]:http://stackoverflow.com/questions/12928660/convert-different-format-of-datetime- to-specific-string-format#comment17551801_12928660 – 2012-10-18 14:45:28

回答

3

你需要把datetime值放入#。您還必須說明您想要與此值進行比較的列。

例如:

dv1.RowFilter = String.Format(CultureInfo.InvariantCulture.DateTimeFormat, 
       "Date = #{0}#", start); 

(其中Date是您的datetime列的實際名稱)

+0

非常感謝你...... – Fernando 2012-03-12 10:44:02

0

看代碼,你缺少列的名稱想要過濾。

例如:
dv1.RowFilter = string.Format("PurchaseDate = '{0}'", Convert.ToString(start));

的假設是,而purchaseDate是視圖內的日期,所述數據是使用被過濾。