quinta-feira, 6 de março de 2014

Validando datas para envio ao banco de dados SQL Server

É muito comum achar validação de dados para envio ao banco de dados da seguinte forma:

if (!(myDate > DateTime.MinValue && myDate < DateTime.MaxValue )){
// code for invalid sql datetime
}
O problema de validar desta forma é que o DateTime.MinValue retorna 00:00:00.0000000, January 1, 0001  enquanto a data minima aceita pelo SQL Server é 1/1/1753.

Para que a validação seja valida para o envio a um banco de dados SQL Server você pode fazer como abaixo:

if (!(myDate > SqlDateTime.MinValue.Value && myDate < SqlDateTime.MaxValue.Value )){
// code for invalid sql datetime
}

Nenhum comentário: