C#中 int类型 和 int?类型之间的转换 判断数据库类的数据是否为空值

2025-01-06 15:22:03
推荐回答(4个)
回答1:

你的errorTimes是int型吧,后面都错了,不管是null还是int?

回答2:

不用强制转换,直接接收就可以

回答3:

(int?)改为(int)

回答4:

myUserInfo.errorTimes = reader.IsDBNull(4) ? null : (int?)reader.GetInt32(4)

对应的属性为

public int? errorTimes

{

set;

get;

}

例如我下面的代码

//属性
public int? height { get; set; }
public Boolean? gender { get; set; }


//对应的
person.height = reader.IsDBNull(3) ? null : (int?)reader.GetInt32(3);
person.gender = reader.IsDBNull(4) ? null : (bool?)reader.GetBoolean(4);