Entity Framework Çekirdek Geçişleri bağlam sınıfını bulamadığında

Womanne

Member
Üçüncü basamaktaki sürüm numarasındaki bir uyumsuzluk, şema geçişlerinin başarısız olmasına neden olabilir.


Dün, bir müşterimiz için PowerShell komutuyla bir veritabanı şeması geçişi oluşturan bir geliştirme projemiz vardı. geçiş ekle Entity Framework Core’da aniden “DbContext bulunamadı Derlemede. Doğru derlemeyi kullandığınızdan ve türün soyut veya genel olmadığından emin olun.” Normalde bu hata mesajını, Paket Yöneticisi Konsolunda (PMC) “Varsayılan Proje” olarak yanlış projeyi seçtiyseniz (yani, “Entity Framework Core” bağlamı olmayan bir proje) veya içindeki projeyi alırsanız alırsınız. geçiş ekle parametrede doğru proje değil -Proje işaret etmiştir.

Ancak bu durumda, “Varsayılan Proje” doğru şekilde ayarlanmıştır. Ancak fark ettiğim başka bir tutarsızlık daha vardı: geliştirici, bağlam sınıfı projesinde “Entity Framework Core” paketlerini sürüm 2.0.0’dan sürüm 2.0.1’e güncellemişti. Ancak “Entity Framework Core” araçlarının (Microsoft.EntityFrameworkCore.Tools) kurulu olduğu projede hala 2.0.0 sürümündeydi. Araç paketini 2.0.1 sürümüne güncelledikten sonra bulundu geçiş ekle tekrar bağlam sınıfı.

Sonuç: üçüncü basamaktaki sürüm numarası değişikliklerinin yalnızca “uyumlu hata düzeltmeleri” olmadığını bir kez daha kanıtlayın.

Bu arada, bu sadece Entity Framework Core için geçerli değil. Bu durum son zamanlarda diğer ürünlerde daha sık meydana geldi, örneğin Angular’da, bu durum 4.2.0 sürümündeki yerleşik min ve max doğrulayıcılar 4.2.3 sürümünde tekrar kaldırıldığında zaten vardı.


()



Haberin Sonu
 
Üst