Merhabalar
EF Code first yaklaşımında update-database işlemini code tarafında yapmaya çalışıyorum.
mevcut tabloları olan bir db üzerine 3-4 tablo eklemem gerekiyor lakin MigrateDatabaseToLatestVersion yaptığımda tablo isimleri ve entity class isimleri aynı olduğu için hata veriyor.
modelBuilder.Conventions.Remove<PluralizingTableNa meConvention>(); kullanıyorum genede hata almaya devam ediyorum
çözümü bulamadım
Amaç : Mevcut bir veritabanı içerisine program kuruldukdan sonra 3-4 tablo daha eklemek ve ef ile bu database içerisinde işlem yaptırmak.
Örnek mevcut olan Tablo adı : Deneme benim classımın adı Deneme dataset in adı Denemes
class adını değiştirince örnek DenemeTbl gidiyor yeni tablo acıyor DenemeTbl diye
ücretli ücretsiz yardım talep ediyorum
konu UP
Entity Framework Uzman Arıyorum
7
●110
- 21-04-2020, 12:45:00
- 21-04-2020, 18:05:44Kimlik doğrulama veya yönetimden onay bekliyor.DBContext ile bağlantı sağlandıktan sonra program içerisinden update-database çalıştırıp modellerinizin db üzerinde oluşturulmasını mı istiyorsunuz?
İlk esnada data var mı database içerisindeki mevcut tablolarda ?
PluralizingTableNameConvention disable ettiğinizde manuel isimlendirme yapıyor musunuz? Bu yöntemi kullansanız bile ben connection esnasında o tabloların olmamasından ötürü exception alacağınızı tahmin ediyorum.
Yapmak istediğiniz şey biraz daha bash script işi gibi duruyor. - 21-04-2020, 21:40:39update-database işlemini code tarafında yapmaya çalışıyorum.ByNF adlı üyeden alıntı: mesajı görüntüle
data mevcut tablolarda
manuel isimlendirme yapmıyorum. - 21-04-2020, 22:38:19Hocam burada ilk yaşayacağınız sorun model olarak contexte verilmiş bir tablonun bulunmamasından dolayı context ayağa kalkmaz ve hata verir.
Context öncesinde bu işlemi yapabilirsiniz ama bu sefer de tabloyu migration ile oluşturmak için deploy edilen yerde de aynı şekilde dotnet sdk sına ihtiyacınız olacak. Hatta bu da yetmeyecek projenin de karşı tarafa gitmesi gerekecek, çünkü ef core designer tool migration historye bakarak update-database yapması gerekecek.
Bunu bu kadar kompleksleştirmek yerine, ado.net ile entity framework contexti ayağa kalkmadan database bağlanıp pure SQL querysi ile tabloyu oluşturmanız daha mantıklı ki bu olayınızı çözer. - 21-04-2020, 23:44:04hiç yapmadığım bir işlem olduğundan bu aklıma geldi lakin nasıl yapacağımı bilemedim
- 22-04-2020, 00:37:27Yanlış anlamadıysam sorununuzu eskiden yazmış olduğum bu makale ile çözebilirsiniz.
https://www.aeguven.com/c-entity-fra...tabase-update/ - 22-04-2020, 13:09:32Otomatik migrasyon işlemini ef core ile aşağıdaki şekilde sağlayabilirsiniz. Ancak bu yöntem pek önerilen bir yöntem olmadığı için çok kullanılmıyor sektörde de. İlk db oluşturma esnasında başarılı ama mevcut db için tablo oluşturuyor mu bilmiyorum.
Eğer bu sorununuzu çözerse ben komple yanlış anlamışım demektir sizi
https://jasonwatmore.com/post/2019/1...ase-on-startup
