2009-10-22 74 views
2

我使用的是MySQL數據庫與DbLinq,但引發異常:轉換MySQL的DATETIME爲System.DateTime

「不能mysql的日期時間轉換爲 System.DateTime的」

我該如何解決這個問題?

+0

你現在怎麼施放/轉換它? – Ariel 2009-12-28 05:56:30

+0

MySql日期是否爲unix時間戳? – 2010-01-30 16:32:08

回答

1

好吧,如果你有包含MySQL DateTime值的結果集,你可以使用ConvertAll方法使用DateTime.Parse創建System.DateTime值的集合委託一起。

下面是一個例子,其中「結果」是包含MySQL日期時間值您查詢的DBLinq的結果:

List<DateTime> dateTimes = results.ConvertAll(delegate(string time){ 
    return DateTime.Parse(time); 
}); 

這是你在找什麼?

1

我是從ASP朝着我的GridView列:綁定列到ASP:的TemplateField所以不得不明確地顯示從MySQL數據庫的日期。通過反思,我發現集合將日期字段鍵入爲MySqlDateTime而不是system.DateTime。

我在gridview的上下文中添加了導入MySql.Data.Types語句到後面的代碼和下面的標籤內的Eval語句。

文本= '<%#CTYPE(EVAL( 「Submitted_Date」),MySql.Data.Types.MySqlDateTime)的ToString%>'

輸出格式:2011年2月23日

希望有所幫助!

5

檢查是否有任何零日期表示日期,如'0000-00-00' in database; 這可能是錯誤的原因。