Хранимая процедура возвращает данные о записи пользователя, включая обнуляемый столбец даты и времени для их последней даты входа в систему. Какой из них является лучшим выбором при рассмотрении возможности использования значений NULL при попытке назначить переменную даты .Net?
Try
_LastLogin = CDate(DT.Rows(0)("LastLogin"))
Catch ex As InvalidCastException
_LastLogin = Nothing
End Try
или
If DT.Rows(0)("LastLogin") Is DBNull.Value Then
_LastLogin = Nothing
Else
_LastLogin = CDate(DT.Rows(0)("LastLogin"))
End If
Редактировать : Я также забыл о возможности использования TryParse
If Not Date.TryParse(DT.Rows(0)("LastLogin").ToString, _LastLogin) Then
_LastLogin = Nothing
End If
Какой предпочтительный метод обработки возможных NULL
значений из базы данных? Есть ли лучший способ, чем три из перечисленных?
Редактировать # 2 : Я заметил, что метод TryParse
не очень хорош при попытке присвоить типу Nullable
.