我有一个包含空值的表,我需要使用 SqlDataReader 从表中获取数据。我不知道如何安全地将 DBNull 转换为 int。
我现在正在这样做:
...
reader = command.ExecuteReader();
while (reader.Read()) {
int y = (reader["PublicationYear"] != null) ? Convert.ToInt32(reader["PublicationYear"]) : 0;
...
}
...
但是Object cannot be cast from DBNull to other types.
当 PublicationYear 为空时得到一个。
我怎样才能安全地获得价值?
谢谢。