0

如何检查数据库中是否存在数据或是否为 NULL。我收到以下错误Object cannot be cast from DBNull to other types。我需要在代码中添加 IsDBNULL 吗?

SignedOn.Text = Convert.ToDateTime(reader("SignedOn")).ToShortDateString()
4

1 回答 1

3

你可以像下面这样检查

If NOT IsDbNull(reader("SignedOn")) Then
   SignedOn.Text = Convert.ToDateTime(reader("SignedOn")).ToShortDateString()
End If

根据评论编辑:

  • 当您知道列的确切类型时,您可以调用与该类型相关的方法,reader.GetDateTime例如reader.GetString
  • 转换后,如果结果可能为 null,那么您最好在调用之前检查 nullToShortDateString
  • DateTime.TryParse如果您在 varchar 列中存储日期时间,则可以使用方法
于 2013-05-01T18:10:44.357 回答