2

我想针对 null 检查数据表中的以下字段:

r.Field<int>("prod_type")

if (r.Field<int>("prod_type") != null && 
    !string.IsNullOrEmpty(r.Field<int>("prod_type").ToString()))

但我得到以下异常:

指定的演员表无效。

如何检查数据表中的整数值是否为空或空?

4

3 回答 3

4

Field扩展方法支持可为空的类型。用于HasValue检查可空对象是否不为空:

if (r.Field<int?>("prod_type").HasValue)
于 2013-02-18T09:37:18.750 回答
2

您收到的错误表明数据表中的字段不是 typeint。如果它是类型int,它不能保存 null 值,你可以试试int?哪个是Nullable

r.Field<int?>("prod_type") != null
于 2013-02-18T09:35:39.270 回答
1

如果prod_type确实是int数据库中的一个字段,请尝试这样做:

if (r.Field<int?>("prod_type") != null)
于 2013-02-18T09:37:20.753 回答