14

.Net Core ile bir MVC uygulaması yapıyorum ve bir geçiş komut dosyası oluşturmamız gerekiyor.EF kodunda ilk ve .net çekirdeği olan bir geçiş komut dosyası oluşturabilir miyim

Güncelleme-Veritabanı: Bir parametre olamaz ben komutunu

update-database -script 

ama .net Core aynısını yapmaya çalıştıklarında sonraki istisna atıyor kaçtın Ef6 ile

bulduğu eşleşen parametre adı 'senaryo'

Eğer EF7 için bir eşdeğer olup olmadığını biliyor musunuz?

cevap

27

EF documentation'a göre Script-Migration komutunu kullanabilirsiniz.

Yalnızca tüm taşıma işlemlerini komut dosyası yapmak isterseniz, bunu yalnızca Paket Yöneticisi konsolundan çağırabilirsiniz. Sadece komut istiyorsanız son taşımaya ait değişiklikler böyle diyebilirsin:

Script-Migration -From <PreviousMigration> -To <LastMigration> 

, komuta birkaç seçenek daha ordasın belgeler mutlaka kontrol edin.

+1

Komut dosyası geçişi, (Göçmen geçişi Kimden geçişten daha eski olduğunda) aşağı geçişler için çalışmıyor gibi görünmektedir. 'Geri al' komut dosyasının nasıl oluşturulacağı ile ilgili herhangi bir fikir var mı? – Nullius

+1

@Nullius, onu aramak istemezsiniz ya da bir "undoScript" gibi görünmesini, kodunuzu geri almanızı ve ardından Db'yi güncellemenizi ve yeni komut dosyalarını almanızı ... –

+1

Bir dağıtım sunucumuz var. ayrıca db geçişlerini de yönetir. Ör: Bir dağıtım geri alındığında, veritabanı da önceki duruma indirgenmelidir. Db geçişlerini yöneten oluşturma adımı, bir 'yukarı' ve 'aşağı' komut dosyasına ihtiyaç duyar. Komut geçişinin, Göçten önceki geçişten daha eski bir Göç belirtilirken de işe yaradığını öğrendik. Ancak, geçiş yapmak istediğiniz geçişten ÖNCE bir kişiye Göç için geçişi ayarlamanız gerekir. Ayrıca, son geçiş için bir 'aşağı' komut dosyası oluşturmaya çalışırken, Kimden geçiş parametresi için 'ZZZZZZ' (veya benzeri) kullanılmalıdır. – Nullius

1

Sen Ayrıca yeni güç kabuk out-file komut ile açmak amacıyla bu koyabilirsiniz komut dosyası

dotnet ef migrations script 

üretmek için dotnet çekirdek cli kullanabilirsiniz.

dotnet ef migrations script | out-file ./script.sql 
İlgili konular