在存储库上,我将可为空的字符串" o.Attribute("PreorderLanchDate")"
转换为nullable datetime
。
这是代码:
PreorderLanchDate = o.Attribute("PreorderLanchDate") == null ? (DateTime?)null : DateTime.Parse(o.Attribute("PreorderLanchDate").Value),
在控制器上,launchdate是可为空的,无法获取值,因为它显示了空值异常。
这是代码:
LaunchDate = (DateTime)product.PreorderLanchDate
最佳答案
尝试这个。
//along with the null reference check, Use `String.IsNullOrEmpty` to check o.Attribute("PreorderLanchDate").Valuen
PreorderLanchDate = o.Attribute("PreorderLanchDate") == null || String.IsNullOrEmpty(o.Attribute("PreorderLanchDate").Value) ? (DateTime?)null : DateTime.Parse(o.Attribute("PreorderLanchDate").Value),
//Cast to a nullable DateTime
LaunchDate = (DateTime?)product.PreorderLanchDate