Eccesso di SqlDateTime. Deve essere tra il 1/1/1753 00:00:00 e il 31/12/9999 11
Quando si inseriscono dati con il framework orm NHibernate, è stato segnalato l'errore sopra:
Eccesso SqlDateTime / Eccesso SqlDateTime [Sommario: Errore - Eccesso di SqlDateTime. Deve essere tra il 1/1/1/1753 00:00:00 e il 31/12/9999 11:59:59 SqlDateTime, overflow. Deve essere tra il 1/1/1753 00:00:00 Guerra 31/12/9999 23:59:59 Motivo Quando si applica C# inserire o aggiornare database, data e parola
Errore - Overflow di SqlDateTime. Deve essere tra il 1/1/1753 00:00:00 e il 31/12/9999 11:59:59 Eccesso di SqlDateTime. Deve essere tra il 1/1/1753 00:00:00 e il 31/12/9999 11:59:59
Causa
Quando si utilizza il database inserito o aggiornato C#, il valore del campo datatime è nullo per inserimento predefinito C# 0001-01-01 causa un overflow di tipo datatime.
Intervallo di tipi DateTime in C#
DateTime.MinValue = 1/1/0001 00:00:00 AM DateTime.MaxValue = 23:59:59.99999999, 31 dicembre 9999, esattamente un tic di 100 nanosecondi prima delle 00:00:00, 1 gennaio 10000 Intervallo di tipi di data-ora in SQL Server
tra il 1/1/1753 00:00:00 e il 31/12/9999 23:59:59
Dopo aver letto questo articolo, probabilmente ho capito qualcosa: dovrebbe esserci una proprietà vuota, NHibernate imposta automaticamente il valore predefinito, penso che dovrebbe essere così????
Poi, dopo aver assegnato l'attributo UpdateTime che non era stato originariamente assegnato,Ha riscontrato che non c'era alcun errore, e poi inserito la tabella dei dati,
Tuttavia, il mio campo può essere vuoto, cosa dovrei fare???
Trovare la proprietà UpdateTime sotto la classe DateTime e impostarla su DateTime? Cioè, permettere il vuoto. (Nel xml mappato è il migliore, impostato anche su not-null="false", come segue:)
Infine, successo, fai uno screenshot del database!
|