İlkay Genç
black and gray laptop computer

Migration Nedir? Ne işe yarar? (Code First)

Entity Framework (Code First) Migration

Code First ile yaptığımız projelerde güncellemeleri sık sık yapmamız gerekecek. Veri tabanın yapısında değişiklikler yapıldığında tüm veri tabanı yeniden oluşturuluyor. Ve bu değişiklikler migration ile sağlanacak.

Hem performans kaybı yaşıyorduk hem de ciddi bi sıkıntı yaşatırdı bize. Microsoft Entity Framework 4.3 ile Code First‘ e Migration özelliği gelmiş. Bu sayede sıfırlanmadan veri tabanı üzerinde istenen değişiklikler gerçekleştirilmiş oluyor. Migrations yapısını aktifleştirmek için “Package Manager Console” üzerinden “enable-migrations” komutunu kullanmalıyız.

Bu işlemden sonra projemizde “Migrations” adlı klasör oluşuyor ve bunun içerisinde  “Configuration.cs” isimli dosyamız mevcuttur. Yapıcı metodunda “AutomaticMigrationsEnabled” özelliğine “false” değeri atanmıştır. (AutomaticMigrationsEnabled) özelliği sayesinde otomatik olarak veri tabanını güncelleyebiliyoruz. Bu özelliğin kullanılabilmesi için özelliğin  “true” değerini set ediyoruz. “update-database” komutu ile veritabanımızı güncelleyebiliyoruz artık eğer veritabanımız yoksa oluşturur ondan sonraki updatelerde güncelleme olarak çalışacaktır.

“AutomaticMigrationDataLossAllowed” özelliği ile yapacağımız tablo güncelleme durumlarında, tablonun dolu olma olasılığında varsayılan olarak veriler güvence altına alınmaktadır. Bu özellik “true“ olduğu müddetçe bunu gözardı edebilir ve güncellemeyi başarılı yapabiliriz fakat default olarak ”false” gelecektir.

SQL’de Daha fazlası için: http://ilkaygenc.com.tr/?s=sql

Yorum Yap