使用 C#。我有一根绳子dateTimeEnd
.
如果字符串格式正确,我希望生成一个DateTime
并将其分配给 eventCustom.DateTimeEnd 类型
public Nullable<System.DateTime> DateTimeEnd { get; set; }
If dateTimeEnd
我需要的是 null 或为空eventCustom.DateTimeEnd
设置为空。
我试图使用以下代码来实现这一点,但我总是为空eventCustom.DateTimeEnd
.
您能帮我定义我的代码中有什么问题吗?
DateTime? dateTimeEndResult;
if (!string.IsNullOrWhiteSpace(dateTimeEnd))
dateTimeEndResult = DateTime.Parse(dateTimeEnd);
eventCustom.DateTimeEnd = dateTimeEndResult = true ? (DateTime?)null : dateTimeEndResult;
看起来您只想:
eventCustom.DateTimeEnd = string.IsNullOrWhiteSpace(dateTimeEnd)
? (DateTime?) null
: DateTime.Parse(dateTimeEnd);
请注意,如果出现以下情况,这将引发异常dateTimeEnd
不是有效日期。
另一种选择是:
DateTime validValue;
eventCustom.DateTimeEnd = DateTime.TryParse(dateTimeEnd, out validValue)
? validValue
: (DateTime?) null;
现在将结果设置为null
if dateTimeEnd
无效。注意TryParse
把手null
作为输入没有问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)