最近我一直很奇怪的错误,同时试图做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