最近我一直很奇怪的錯誤,同時試圖做db.SubmitChanges()
:SQLDATETIME洋溢着DateTime.Now
SQLDATETIME溢出。必須介於1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之間。
的一點是,我只用DateTime.Now
在我的對象設置屬性,並調用Response.Write(DateTime.Now.ToString());
後顯示17-04-2013 18:03:13
理所應當的。
它沒有發生過,現在功能總是中斷。我完全無能爲力 - 我的SQL服務器上的日期似乎沒有問題。
什麼可能導致它?
編輯
,我不認爲這將有助於(它只是太簡單了,有IMO任何錯誤),但有我的功能:
public bool ReportLogIn(int UserID, string IP, int Succeed ...) {
A_UserLoginHistory Report = new A_UserLoginHistory();
Report.IP = IP;
Report.UserID = UserID;
Report.Status = Succeed;
Report.Date = DateTime.Now; //the only DateTime field
...
try {
db.A_UserLoginRegistry.InsertOnSubmit(Report);
db.SubmitChanges();
return true;
} catch (Exception e) {
ErrorLog.AddError(e.ToString());
return false;
}
}
http://stackoverflow.com/questions/3399061/error的可能重複-sqldatetime-overflow-must-be-between-1-1-1753-120000-am-and-12-31-999 –
它可能是DMY/MDY相關的嗎?即12-04-2013 18:03:13會好嗎? – paul
請記住,'db.SubmitChanges()'應用自上次調用'SubmitChanges()'以來的每個更改或創建了上下文。你可以通過查看'db.GetChangeSet()'來確定所有的變化。任何受影響的對象上的任何日期/時間列都可能是原因 - 例如,如果任何日期時間通過默認的DateTime.MinValue進行處理,則它超出了SQL Server的範圍。 – mellamokb