Si vous vérifiez l'absence de DBNULL, la conversion d'une date SQL en dateTime .NET ne devrait pas poser de problème. Cependant, vous pouvez rencontrer des problèmes lors de la conversion d'un DateTime .NET en un DateTime SQL valide.
Le serveur SQL ne reconnaît pas les dates antérieures au 1/1/1753. C'est l'année où l'Angleterre a adopté le calendrier grégorien. Habituellement, la vérification de DateTime.MinValue est suffisante, mais si vous soupçonnez que les données pourraient comporter des années antérieures au 18e siècle, vous devez effectuer une autre vérification ou utiliser un autre type de données. (Je me demande souvent ce que les musées utilisent dans leurs bases de données)
La vérification de la date maximale n'est pas vraiment nécessaire, SQL Server et .NET DateTime ont tous deux une date maximale de 31/12/9999. Il peut s'agir d'une règle de gestion valide mais cela ne posera pas de problème.
50 votes
@JohnSaunders : Oui, c'est un peu difficile.