Я хочу проверить значение System.DateTime, прежде чем добавлять его в качестве параметра в свой экземпляр SqlCommand.Проверка даты в пределах диапазона SqlDbType.DateTime
В документации MSDN для SqlDbType перечисления говорит:
Дата и время данных в диапазоне значений от 1 января 1753 года по 31 декабря 9999 г. с точностью 3,33 миллисекунды.
Для проверки значения, я использую
public readonly DateTime SqlDateTimeMin = new DateTime(1753, 1, 1);
public readonly DateTime SqlDateTimeMax = new DateTime(9999, 12, 31);
if (value < SqlDateTimeMin || value > SqlDateTimeMax)
// Validation check fails
else
// Validation check succeeds
Является ли это лучший способ? Есть ли альтернатива жесткому кодированию этих минимальных и максимальных значений?
+1 - похоже, что это точно, что ищет ОП. –
Глаза идут плохо, это поздно днем. Виноват. – dotariel
Чтобы развернуть это, если вам нужно проверить регулярную дату DateTime (что-то, на что я наткнулся), помните, что SqlDateTimes выставляют свойство Value, которое является DateTime. –