2017-03-18 20 views
5

Merhaba, varlık çerçevesinin üzerine bir veri senkronizasyonu projesi hazırladım. çerçevesi, bir dereceye kadar bağımsız şemadır. Şu anda dikkate alınan kırılma değişikliklerinde bile şemadaki değişikliklere daha toleranslı olmasını istiyorum.

ef göç motorun içinde elde etmek için i olacaktır Bunu başarmak için ve değişiklikleri tespit etmek ve bir dönüşüm oluşturmak olacaktır
Varlık Çerçeve Geçiş API'sı

add-transformation 


gibi bir komut oluşturmak gerekir.

Ef6 kaynak kodunu inceledim, ancak başlamak için uygun bir yer bulamadım. herhangi bir yardım memnuniyetle karşılanacaktır.

Düzenleme 1: - yorumlarla

  1. Kod İlk Yaklaşım alınan soruların cevabı
  2. Kapsamı: verilerinde
    değişiklikler göç değişiklikleri birleştirmek için böylece gerek tarafından ele alınacaktır . İhtiyacım olan şey, yeni bir geçiş gibi yeni bir dönüşüm oluşturacak olan add-transformation gibi bir komutu yürütmenin bir yoludur. Bu nedenle, genellikle bir veritabanı modelinin (domain modeli) A sınıfı {get; public int b {get; ayarlamak;}

}

sonra ben

class A 
{ 
public int a {get; set;} 
public int b {get; set;} 
public int c {get; set;} 
} 

ve daha sonra ı add-tranformation ClassChangesA
i

1. değişiklikleri
algılanır 2 zorlamaktadır kod çalıştırmak yapıya sınıf değiştirme. Taşıma sınıfı gibi bir sınıf oluşturun. Ör. Ben aradığınız komut o zaman komutunu update-veritabanını kullanarak veritabanını güncelleyebilirsiniz eklenti göç migration_name olduğuna inanıyoruz

class Transformation_112334_ClassChangesA 
{ 
public A Up(OldA model){ 
    //Property C added 
} 
public OldA Down(A model){ 
    //Property C removed 
} 
} 
+0

i MSDN makalesinde https://msdn.microsoft.com/en-us/library/jj591621(v=vs.113).aspx – pravs

+0

İlk soru geçmesi tavsiye, ilk kod olarak yaklaşımınızı ediyorum varsayarsak İlk kod veya DB First yaklaşımı? İkinci soru, veri senkronizasyon uygulamanızın ne yapması gerektiği "kapsamı" hakkında? a. Değişiklikleri yoksay (alanlar ekle? Tablo ekle?) Veya b. Ayrıca yeni değişikliklerde yer alan verileri çoğaltır (alanlar veya neyi?)? Üçüncü soru, birisinin "kapsamı" veritabanının ardından senkronizasyon uygulamanızı yeniden derleyebilir misiniz? – bubi

+0

@bubi - cevabı düzenleyerek bir soruya cevap verdim. Lütfen gör. –

cevap

1

, bu varlığın kod ilk göçler ile çalışmak nasıl çerçeve.

İlgili konular