【发布时间】:2018-08-09 05:51:53
【问题描述】:
我正在从 DataTable 创建一个列表。数据表中的某些单元格值为空,因此在运行转换时出现错误。我尝试使用“三元条件运算符”来实现这一点,但这也需要一个“else”子句。如果单元格值为空,我想跳过为变量赋值。
【问题讨论】:
-
如果你能分享一个minimal reproducible example,那就太棒了。
-
您的整数(或您遇到问题的任何变量类型)是否可以为空?
-
变量在大多数情况下必须声明为int? (问号允许空值)。在某些类为 null 的情况下,您必须执行以下操作: (myClass == null) ? "" : "你好 Wordl"
-
我找到了解决该问题的方法。它不会跳过分配值,而是将 null 分配给字符串,将 0 分配给整数。 someVariable = (dr["someColumn"] != DBNull.Value) ? dr["someColumn"].ToString() : someVariable;