我從javascript獲取日期字符串並將其轉換爲日期時間並將其保存到數據庫。在美國服務器中給出例外的日期
但在印度服務器我的代碼工作正常。但是當我將我的代碼上傳到美國的服務器時,它給出了例外。有沒有什麼常用的方法可以讓我的代碼可以運行到所有的服務器上。
我的代碼是像下面
[WebMethod(EnableSession = true)]
public static bool submitDate(string date) // format is dd-mm-yyyy 20-01-2011
{
DateTime DOBdate = DateTime.Now;
double age = 0.0;
if (DateTime.TryParse(date , out DOBdate))
{
age = (DateTime.Now - DOBdate).Days/365;
}
dbcmd.Parameters.Add("@DateOfBirth", SqlDbType.DateTime).Value = Convert.ToDateTime(DOBdate);
}
請幫助我。
顯示的異常是 SqlDateTime溢出。必須介於1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之間。
爲什麼您的字符串處於區域模糊格式?試試'yyyymmdd'。或者首先使用日期,而不是字符串。你是否讓人們手動輸入這些東西?爲什麼? –
我正在使用datepicker選擇日期並將其發送到該函數中的服務器。 –
那麼爲什麼你的datepicker傳遞格式爲dd-mm-yyyy的字符串呢?這顯然不會在美國服務器上運行,這是預計mm-dd-yyyy。沒有20個月,因此溢出。幸運的是,這並沒有在10日發生,在這種情況下,您將只保存非常不正確的數據,而且完全沒有錯誤。 –