+1 Хорошая работа по добавлению обходного пути, который даст желаемый результат.
я проблемы с Nullable DateTime в VB.NET (VS 2010).
Способ 1
If String.IsNullOrEmpty(LastCalibrationDateTextBox.Text) Then
gauge.LastCalibrationDate = Nothing
Else
gauge.LastCalibrationDate = DateTime.Parse(LastCalibrationDateTextBox.Text)
End If
Способ 2
gauge.LastCalibrationDate = If(String.IsNullOrEmpty(LastCalibrationDateTextBox.Text), Nothing, DateTime.Parse(LastCalibrationDateTextBox.Text))
Когда передается пустая строка, метод 1 назначает нулевое (Nothing) значение для gauge.LastCalibrationDate, а метод 2 назначает ему DateTime.MinValue.
В других местах в моем коде у меня есть:
LastCalibrationDate = If(IsDBNull(dr("LastCalibrationDate")), Nothing, dr("LastCalibrationDate"))
Это правильно присваивает Null (Nothing) из троичного оператора Nullable DateTime.
Что мне не хватает? Спасибо!