Как проверить значение SQL DateTime по умолчанию C # - PullRequest
0 голосов
/ 18 февраля 2019

Я добавил новый столбец DateTime в таблицу.После запуска приложения с базой данных с существующими данными оно успешно создало новый столбец типа DateTime ( не обнуляемый ), используя первую миграцию кода, Entity Framework и SQL Server.

Но значением по умолчанию для столбца является 1900-01-01 00:00:00.000.Я не мог проверить то же самое в коде.Я пробовал DataTime.MinValue, System.Data.SqlTypes.SqlDateTime.MinValue.Value, но значения разные и не совпадают.

Существует ли стандартный способ сравнения значения DateTime по умолчанию для всех баз данных? ИЛИ существует ли способ настроить значение по умолчанию для переменной типа DateTime при ее объявлении в модели?

Объявление столбца в модели:

public DateTime AddedOn { get; set; }

1 Ответ

0 голосов
/ 18 февраля 2019

Один из способов сравнить два значения даты и времени - использовать интервал времени.Итак, вы можете использовать это:

TimeSpan span = dateTimeFromDatabase - defaultDateTime;

if (span == TimeSpan.Zero)
// both are same.

Возможно, вы захотите преобразовать дату и время из базы данных по умолчанию в SqlDateTime, а затем сделать разницу, чтобы получить TimeSpan.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...