26 Nisan 2016 Salı

Unable to update database to match... -5

Unable to update database to match the current model because there are pending changes and automatic migration is disabled. Either write the pending model changes to a code-based migration or enable automatic migration. Set DbMigrationsConfiguration.AutomaticMigrationsEnabled to true to enable automatic migration.

Database’de değişiklik yapıldığı halde, database’i update etmezsek bu hatayla karşılaşabiliriz.
Automatic Migration disabled olduğunda da bu hatayla karşılaşırız. Automatic Migration’u Enable yaptığımızda, güncellemeler otomatik olarak yapılır ve bu hatayla karşılaşmayız.

Ayrıca Package Manager Console’a update-database yazarak, db’yi güncelleyebilir ve bu hatayı giderebiliriz.

Database’i update etmek, database’deki bazı verilerin kaybolmasına yol açabilir. Bu durum, update-database komutunun çalışması konusunda kullanıcıyı uyaracaktır ve komut çalışmayacaktır. Eğer, verilerin kaybolmasını göze alıyorsak:
update-database -Force komutunu kullanarak database’i “kaba kuvvet uygulayarak” güncelleyebiliriz.

Bu gibi hataları aşmak için, elle yeni bir migration eklememiz de gerekebilir. Yeni migration eklemek için, Ayrıca Package Manager Console’a  add-migration ÖrnekMigration yazmamız gerekir. ÖrnekMigration yerine, tabi ki istediğimiz herhangi bir text’i girebiliriz.
Kodu çalıştırdığımızda, migration’umuz oluşturulacaktır.

Hiç yorum yok:

Yorum Gönder