2011-05-05 91 views
0

你好 我使用datetime數據類型的SQL服務器,但每當我保存這個形式我得到這個錯誤「字符串未被識別爲有效的DateTime 「。在我的代碼中,我使用文本框上的ajax代碼來選擇日期。但同樣的錯誤,我越來越。我將它指定爲日期格式,但仍然會出錯。我們現在在幹什麼。如何解決這個錯誤「字符串未被識別爲有效的DateTime」

+2

你應該提供一些更多的信息,如更多的錯誤信息,以便它possile以確定它是否來自於數據庫或代碼準備數據數據庫調用,也許還有一些代碼,以便我們可以看到數據是如何處理的。在數據到達數據庫之前,數據可能會在日期和字符串之間來回轉換數次。 – Guffa 2011-05-05 07:27:00

回答

0

嘗試格式:

DateTime.ToString("yyyy-MM-dd HH:mm:ss.fff"); 
0

您可以使用此VB代碼,將其轉換:

dataandtimevarible.Value.ToString("dd-MM-yyyy")

你需要格式= 「DD-MM-YYYY」 添加到您的標記代碼並將其添加到您的標記代碼

<ajaxToolkit:CalendarExtender ID="CalendarExtender1" runat="server" Format="dd-MM-yyyy" TargetControlID="CreatedOnTextBox"> </ajaxToolkit:CalendarExtender>

你必須從文化語言確定最後一件事!

+0

我仍然得到相同的錯誤...... – user739266 2011-05-05 08:33:47

+0

mmmmm。好 。 你的語言是什麼? 我以前有過這個問題,因爲語言是阿拉伯語。 – HAJJAJ 2011-05-05 09:29:51

+0

嗨,終於我得到了解決方案,我在哪裏採取datetime數據類型的地方,我把nvarchar數據類型到我的code.but在sql服務器,我把datetime數據類型..... – user739266 2011-05-05 10:28:25

0

你如何將數據保存到數據庫中?你在使用parameters嗎?如果沒有,則使用參數 - 保存日期/時間值,選擇您的參數數據類型爲DbType.DateTime

現在,您的文本框會給您一個字符串值,您需要在分配給參數之前將其轉換爲日期/時間數據類型。使用DateTime.ParseExact方法與你的具體日期格式 - 比如,

var param = new SqlParameter("MyDateColumn"); 
param.DbType = DbType.DateTime; 
param.Value = DateTime.ParseExact(textbox1.Text, "dd-MM-yyyy", null); 
相關問題