2010-10-18 52 views
1

將表達式轉換爲數據類型datetime的算術溢出錯誤。該語句已終止。如何將en-gb轉換爲en-us(算術溢出錯誤將表達式轉換爲數據類型datetime)

我的網站的文化是EN-GB(18/10/2010)

我的數據庫服務器的文化是EN-US(10/18/2010)

的日期存儲在一個參數中;

command.Parameters.AddWithValue("@bookingdate", inputBookingDate.Text) 

有沒有辦法在進入數據庫之前將其轉換爲美國的日期格式?

我試過這段代碼;

Dim dbDate As String = command.Parameters("@bookingdate").Value.ToString 
    dbdate = DateTime.Parse(dbdate, New CultureInfo("en-US")) 
    command.Parameters("@bookingdate").Value = dbdate 

但得到的錯誤「字符串未被識別爲有效的DateTime。」

dbDate = "29/10/2010 00:00:00" 

如何指定當前的文化?以GB格式將dbDate標識爲有效的日期時間。

謝謝。

回答

1

嘗試DateTime.Parse。以GB格式讀取日期,以美國格式寫出。同時也是檢查您的UI代碼以確保它在任何地方都使用GB格式的好時機。或者改變你的數據庫所期望的格式。

如果您的數據庫支持它,您可以寫出日期作爲時間戳,以儘量減少使用美國日期格式的次數。

相關問題