请教大家一个DNN下的日期问题

8 views
Skip to first unread message

gdlmo

unread,
Dec 15, 2009, 11:24:19 PM12/15/09
to AboutDNN
请教大家一个DNN下的日期问题,我编写的一个模块中需要对Datetime进行保存,但是我在新增记录时这个日期字段应为null,我使用
objDevice.UpdateDate = Null.NullDate ;新增时会提示“SqlDateTime overflow.
Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM. ” ,我查看
了Null.NullDate的值是“1/1/0001 12:00:00 AM”,请问大家是如何解决的?

m2land

unread,
Dec 15, 2009, 11:33:22 PM12/15/09
to AboutDNN
你应该在往数据库存储时判断一下

if(objDevice.UpdateDate == Null.NullDate)
{
objDevice.UpdateDate = SQLServerDateType.NullDate; (示范代码,自己去MSDN查
一下SQL Server 的date type null 是如何写的)
save objDevice.UpdateDate;
}
else
{
save objDevice.UpdateDate;

gdlmo

unread,
Dec 16, 2009, 1:52:31 AM12/16/09
to AboutDNN
谢谢m2Land的回答,是应该做判断,然后设置为DBNull.Value,全部代码如下:
if (ReturnDate == Null.NullDate)
{
//ReturnDate = DBNull.Value;
//SqlHelper.ExecuteNonQuery(ConnectionString,
GetQualifiedName("gygac_DeviceDeployUpdate"), DDId, ModuleId,
DeviceName, Borrower, Lender, LendDate, Estimated, IsReturned,
System.Data.SqlTypes.SqlDateTime.MinValue, EMail, CreatedByUser,
Remark);
SqlHelper.ExecuteNonQuery(ConnectionString,
GetQualifiedName("gygac_DeviceDeployUpdate"), DDId, ModuleId,
DeviceName, Borrower, Lender, LendDate, Estimated, IsReturned,
DBNull.Value, EMail, CreatedByUser, Remark);
}
else
{
SqlHelper.ExecuteNonQuery(ConnectionString,
GetQualifiedName("gygac_DeviceDeployUpdate"), DDId, ModuleId,
DeviceName, Borrower, Lender, LendDate, Estimated, IsReturned,
ReturnDate, EMail, CreatedByUser, Remark);
}

On 12月16日, 下午12时24分, gdlmo <goodluc...@gmail.com> wrote:
Reply all
Reply to author
Forward
0 new messages