SqlDateTime overflow. 1/1/1753 00:00:00 ile 31/12/9999 11 arasında olmalı
NHibernate orm çerçevesiyle veri eklendiğinde, yukarıdaki hata bildirildi:
SqlDateTime overflow / SqlDateTime overflow [Özet: Hata - SqlDateTime taşması. 1/1/1753 00:00:00 ile 31/12/9999 23:59:59 SqlDateTime taşması arasında olmalı. 1/1/1753 00:00:00 arasında olmalı Savaş 31/12/9999 23:59:59 Neden C# uygularken veritabanını ekle veya güncellele, tarih saati kelimesi]
Hata - SqlDateTime taşması. 1/1/1753 00:00:00 ile 31/12/9999 23:59:59 arasında olmalı SqlDateTime overflow. 1/1/1753 00:00:00 ile 31/12/9999 23:59:59 arasında olmalı
Neden
C# veritabanını ekleme veya güncelleme kullanıldığında, tarih saati alanı değeri varsayılan olarak null olur ve C# 0001-01-01 sql sunucu tarih zaman türü taşmasına neden olur.
DateTime tip aralığı C#
DateTime.MinValue = 1/1/0001 00:00:00 DateTime.MaxValue = 23:59:59.999999, 31 Aralık 9999, tam olarak 00:00:00, 1 Ocak 10000 öncesinde bir 100 nanosaniyelik tik Sql Server'da tarih saati tür aralığı
1/1/1753 00:00:00 ile 31/12/9999 23:59:59 arasında
Bu makaleyi okuduktan sonra muhtemelen bir şey anladım, boş bir özellik olmalı, NHibernate otomatik olarak varsayılan değeri belirliyor, bence böyle olmalı????
Sonra, başlangıçta atanan UpdateTime özniteliği atandıktan sonra,hata olmadığını buldu, ve ardından veri tablosunu ekledim,
Ancak alanım boş olabilir, ne yapmalıyım???
DateTime sınıfı altında UpdateTime özelliğini bulup DateTime olarak mı ayarlayın? Yani, boşluğa izin ver. (Eşlenmiş xml en iyisidir, ayrıca not-null="false" olarak ayarlanmıştır, aşağıdaki gibi:)
Sonunda başarı, veritabanının ekran görüntüsünü alın!
|