我正在尝试在Form上填充DateTimePicker。但是一些日期字段为空,因此运行时出错。是的,我可以为所有三个DateTimePickers有3个尝试catch语句,但我正在寻找一种更简洁的方法来做到这一点。
我尝试通过将数据传递给一个包含try catch的函数来设置值,但是在实际读取数据时会出现错误。
错误:从“DBNull”类型转换为“日期”类型无效
dtpReturnDate.Value = GetDate(newEngineSelection.Item("engineReturnDate"))
Private Function GetDate(newDate As Date)
Dim datNewDate As Date
Try
datNewDate = newDate
Catch ex As Exception
datNewDate = New Date(2000, 1, 1)
End Try
Return datNewDate
End Function
答案 0 :(得分:1)
您可以使用IsNull功能。
If newEngineSelection.IsNull("engineReturnDate") Then
dtpReturnDate.Value = New Date(2000, 1, 1)
Else
dtpReturnDate.Value = CDate(newEngineSelection.Item("engineReturnDate"))
End If