对象类型空值检查
本文关键字:检查 空值 类型 对象 | 更新日期: 2023-09-27 18:13:29
我使用下面的代码从ListviewDataItem控件获取日期值
object HyperWalletPayoutDate =
DataBinder.Eval(dataItem.DataItem, "HyperWalletPayoutDate");
some time HyperWalletPayoutDate值为空。我如何检查这个空值?
我试过这种方法,但不工作
if (HyperWalletPayoutDate.Any() == null || HyperWalletPayoutDate == ""
|| HyperWalletPayoutDate ==null)
请给我一些建议来解决这个问题。提前感谢……
您看到的行为(值是{}
而不是null
)是装箱的结果。假设您期望string
值,您应该对特定类型使用正确的检查,即
if (String.IsNullOrEmpty((string)HyperWalletPayoutDate)) {
...
}
这将在内部打开值的框,并确定它是否有值。
你的代码的问题是第一个条件
if (HyperWalletPayoutDate.Any() == null || ...
已经需要一个实例。您必须先在HyperWalletPayoutDate
上执行null
检查:
if (HyperWalletPayoutDate == null || HyperWalletPayoutDate == "" || HyperWalletPayoutDate.Any() == null)
当HyperWalletPayoutDate
为null
时,不计算其他条件,因此不再抛出异常。
我认为它是这样的:
if(HyperWallenteretPayoutDate.Any(d => d)){
//it does not equal null
}