Преобразование пустой строки в дату, а затем обратно - PullRequest
1 голос
/ 20 июля 2010

Я пытаюсь провести некоторые проверки в VB.NET.

 If Entity.WeekEndDate.ToString = String.Empty Then
            ErrorList.Add(New cValidationError("id", "Incorrect Week End Date"))

Где WeekEndDate имеет тип Date. Когда я изначально строю объект, как я могу вставить значение в WeekEndDate, которое будет генерировать пустую строку (т. Е. "") При преобразовании из Date в String?

Ответы [ 4 ]

4 голосов
/ 20 июля 2010

Может быть лучше использовать MinValue для представления неверной даты:

If Entity.WeekEndDate = DateTime.MinValue Then 
     ErrorList.Add(New cValidationError("id", "Incorrect Week End Date"))

Как правило, вам не следует преобразовывать даты в строки, а затем сравнивать их. Сравните как исходный тип данных (в данном случае DateTime).

0 голосов
/ 20 июля 2010

Нет значения даты, которое будет выдавать пустую строку при вызове ToString.Если вам нужна эта функциональность, столбец должен иметь значение NULL в вашей базе данных, и ваша сущность должна использовать тип Nullable(Of DateTIme) для значения.

Затем вы можете сказать:

If Entity.WeekEndDate Is Nothing Then
    ErrorList>Add(new cValidationError("id", "Incorrect Week End Date"))

Ивыдайте ошибку, просто скажите:

Entity.WeekEndDate = Nothing
0 голосов
/ 20 июля 2010

Сделайте его обнуляемым и сравните с нулем.

MSDN ссылка: http://msdn.microsoft.com/en-us/library/bb981315(VS.80).aspx

0 голосов
/ 20 июля 2010
WeekEndDate = Nothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...