gpt4 book ai didi

C# DateTime 默认值 Issue 01/01/0001 00 :00:00

转载 作者:太空狗 更新时间:2023-10-29 23:24:23 27 4
gpt4 key购买 nike

我在将 DateTime 插入数据库时​​遇到问题,出现以下错误:

SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.

我知道 SQL 日期必须在 1/1/1753 12:00:00 AM 和 12/31/9999 之间,但是我的日期似乎仍然是 01/01/0001 00:00:00。

我在网络服务方法中定义了以下日期:

  [DataMember]
public DateTime RecordTimeStamp { get; set; }

这在下面的代码中用于添加到数据库

  sqlComm.Parameters.Add("@RecordTimeStamp", SqlDbType.DateTime).Value = pCustomer.RecordTimeStamp;

此代码从带有代码的 aspx 页面中获取其值

  DateTime now = DateTime.Now;
pCustomer.RecordTimeStamp = now;

我试图让它将当前日期插入数据库,但它似乎与默认值没有变化。

最佳答案

尝试改变属性

来自:

[DataMember]
public DateTime RecordTimeStamp { get; set; }

到:

[DataMember]
public DateTime? RecordTimeStamp { get; set; }

希望这能解决问题。发生的情况是 DateTime 不是 NULL 数据类型,它强制在那里放置一个默认值 (01/01/0001) 以确保将提交非空日期。我不知道为什么它不接受更改的值并抛出“超出范围”的异常。这是您可能想要进一步调查的内容。

关于C# DateTime 默认值 Issue 01/01/0001 00 :00:00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14755802/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com