当在C#使用可空类型时要注意类型间的一致,出现上述和DateTime没法转换的问题就是没有注意类型间的一致,例如,当给一个可空的时间类型字段赋值时不能使用null,而要使用一个DateTime? 类型。spa
例子:(报错了)get
public DateTime? time { get; set; }it
time = item.HospOutDate.HasValue ? DateTime.Parse(item.HospOutDate.Value.ToString("yyyy-MM-dd HH:mm:ss")) : null;class
错误提示:没法肯定条件表达式的类型,由于“<null>”和“System.DateTime”之间没有隐式转换im
解决办法:di
添加: DateTime? TimeNull = null;时间
time = item.HospOutDate.HasValue ? DateTime.Parse(item.HospOutDate.Value.ToString("yyyy-MM-dd HH:mm:ss")) : TimeNull ;co