数据库日期时间空句柄

本文关键字:句柄 时间 日期 数据库 | 更新日期: 2023-09-27 18:08:41

我有以下代码:

var distinctRows = 
      (from row in ds.GetTable(this.TagShortName).AsEnumerable()
         select new Audit    
          {
             ID =row.Field<long>("ID"),
             UpdatedBy =string.Format("{0} {1}", 
                                      row.Field<string>("UpdatedByFirstName"),
                                      row.Field<string>("UpdatedByLastName")),
             UpdatedOn = ow.Field<DateTime>("UpdatedOn")
          }).Distinct(new AuditComparer());

当我在UpdateOn字段中有空值时,它会抛出异常:

UpdatedOn =row.Field<DateTime>("UpdatedOn")

异常:不能强制转换DBNull。值键入'System.DateTime'。请使用可空的类型。

如何处理这个?

数据库日期时间空句柄

使UpdatedOn为空或

UpdatedOn = row.Field<DateTime?>("UpdatedOn")?? DateTime.MinValue

使用Nullable<DateTime>DateTime?

UpdatedOn = row.Field<DateTime?>("UpdatedOn")