将 DateTime 设置为空值 c#

Setting DateTime to empty value c#

我试图在我的应用程序中将日期时间设置为一个空值 - 我正在尝试以下方式

    string datetime = Convert.ToString(dataRow["dbfield"]).Trim();
    MyDateTime= string.IsNullOrEmpty(datetime)
                    ? (DateTime?) null
                    : GeneralUtilities.ConvertOTDateToDate(datetime);

我收到的错误是

cannot implicitly convert type System.Datetime? to System.Datetime, an explicit conversion exists are you missing a cast?

有人可以帮我解决这个问题所需的正确语法吗?

谢谢

我假设 MyDateTime 被声明为 DateTime。将其更改为 DateTime?

GeneralUtilities.ConvertOTDateToDatereturns一个DateTime。将其投射到 DateTime?。如:

MyDateTime= string.IsNullOrEmpty(datetime)
                ? (DateTime?) null
                : (DateTime?)GeneralUtilities.ConvertOTDateToDate(datetime);

DateTime 是一个结构,因此不能为 null。将其更改为日期时间?如果你想使用 null。或者使用类似 DateTime.MinValue 的值作为默认值。

GeneralUtilities.ConvertOTDateToDate 必须 return 一个可为 null 的 DateTime 而不是正常的 DateTime,可能。