Zee*_*eeV 5 c# sql datetime visual-studio-2010
我在将DateTime插入数据库时遇到以下错误:
SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.
Run Code Online (Sandbox Code Playgroud)
我知道SQL日期必须在1/1/1753 12:00:00 AM和12/31/9999之间,但我的日期似乎仍然是01/01/0001 00:00:00.
我在Web服务方法中定义了以下日期:
[DataMember]
public DateTime RecordTimeStamp { get; set; }
Run Code Online (Sandbox Code Playgroud)
这在以下代码中用于添加到数据库中
sqlComm.Parameters.Add("@RecordTimeStamp", SqlDbType.DateTime).Value = pCustomer.RecordTimeStamp;
Run Code Online (Sandbox Code Playgroud)
此代码从带有代码的aspx页面获取其值
DateTime now = DateTime.Now;
pCustomer.RecordTimeStamp = now;
Run Code Online (Sandbox Code Playgroud)
我试图让它将当前日期插入数据库,但它似乎没有从默认值更改.
尝试更改属性
从:
Run Code Online (Sandbox Code Playgroud)[DataMember] public DateTime RecordTimeStamp { get; set; }
到:
Run Code Online (Sandbox Code Playgroud)[DataMember] public DateTime? RecordTimeStamp { get; set; }
希望这能解决这个问题。发生的情况是 DateTime 不是 NULL 数据类型,它强制在那里放置一个默认值 (01/01/0001) 以确保将提交非空日期。我不知道为什么它不接受更改的值并抛出“超出范围”的异常。这是您可能想要进一步调查的事情。
| 归档时间: |
|
| 查看次数: |
9219 次 |
| 最近记录: |