在下面DataView.Rowfilter過濾器,REQUEST_DATE是SMALLDATETIME:VB DataView.RowFilter和鑄造之前比較
dv.RowFilter = "Request_Date >= '01/01/2012' and Request_Date <= '12/31/2012'"
這樣做的問題是,SMALLDATETIME是MM/dd/yyyy hh:mm:ss
,但它相比與字符串格式'MM/dd/yyyy'
。這意味着過濾器會自動將字符串轉換爲smalldatetime,因此比較僅顯示2012年1月1日上午12點和2012年12月31日上午12點之間的日期/時間。 2012年12月31日當天晚些時候的任何行都不會被此過濾器拾取。我知道我可以添加一天到結束日期或連接,比如說,12:59:59到日期結束以便在當天選擇其他時間,但我希望沿着線條更優雅一些的sql相當於... CONVERT(smalldatetime, Request_Date, 101) <= '12/31/2012'
。有什麼辦法可以爲DataView字段獲取不同的日期格式,還是我堅持在比較之前按摩結束日期?
僅供參考,目前最好的辦法是這樣的:
dv.RowFilter = "Request_Date >= #" & dtpStartDate.DateText & "# and Request_Date <= #" & DateAdd(DateInterval.Day, 1, dtpEndDate.DateValue) & "#"
感謝您的幫助!
我真的很感謝Tim和我可能應該指定我們仍然在.NET 2.0上(不要問)。 – DotNetVet