_callReportCode = reader["Call Report Code"].ToString();
我正在尝试处理调用 ToString 的对象为 NULL 的可能性。 我将使用带有多个变量的上述语句,我不想为每个变量单独尝试/捕获...对字符串进行空值检查的最佳方法是什么。
其他数据类型我一直这样做:
int.TryParse(reader["Account Number"].ToString(), out _accountNumber);
在此代码中,“reader”指的是 SqlDataReader,但这对这个问题来说并不重要。
最佳答案
使用 null-coalescing operator : ??
callReportCode = (reader["Call Report Code"] ?? "").ToString();
如果您字段中的数据是 DBNull.Value
(而不是 null
),这仍然有效,因为 DBNull.Value
是不是null
,所以??
不会被使用,DBNull.Value.ToString()
是""
,这就是您想要的。
关于c# - 防止字符串转换为 Null 失败的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15835388/