【发布时间】:2017-10-19 09:37:07
【问题描述】:
我正在尝试将记录提取到 listarray 中,如下所示:
List<Car> lst = new List<Car>();
string str = "select * from Inventory";
using(SqlCommand cmd = new SqlCommand(str,this.sqlcon))
{
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
lst.Add(new Car
{
CarId = (int)rdr["CarId"],
Make = (string)(rdr["Make"] ?? ""),
Color= (string)(rdr["Color"] ?? ""),
PetName = (string)(rdr["PetName"] ?? "")
});
}
rdr.Close();
}
Make、color 和 petname 可能有空值,因此我使用了 ?? 运算符。我收到以下错误
无法将 system.dbnull' 类型的对象转换为 'system.string'。
在这种情况下检查 null 的正确方法是什么?
【问题讨论】:
-
@Code 一个好的答案并不意味着它不能被关闭。