Entity Framework ile ilk kod tasarımını kullanmak için 3 neden
1) Daha az sarsıntı, daha az şişkinlik
Bir .edmx model dosyası ve ilişkili kod modelleri oluşturmak için var olan bir veritabanının kullanılması, dev bir otomatik oluşturulan kod yığını ile sonuçlanır. Bir şeyleri kırmamak için bu oluşturulan dosyalara asla dokunmamanız ya da bir sonraki nesilde değişikliklerinizin üzerine yazılmaması. Bağlam ve başlatıcı da bu karmaşada sıkıştı. Hesaplanan salt okunur özellik gibi oluşturulan modellerinize işlevsellik eklemeniz gerektiğinde, model sınıfını genişletmeniz gerekir. Bu, neredeyse her model için bir gerekliliktir ve her şey için bir uzantı ile sonuçlanırsınız.
Önce kod ile el kodlu modeller veritabanınız olur. Oluşturduğunuz dosyalar veritabanı tasarımını oluşturan dosyalardır. Ek dosya yoktur ve özellikler eklemek istediğinizde veya veritabanının bilmesi gerekmeyen başka ne varsa sınıf uzantısı oluşturmanıza gerek yoktur. Doğru sözdizimini izlediğiniz sürece bunları aynı sınıfa ekleyebilirsiniz. Heck, isterseniz kodunuzu görselleştirmek için bir Model.edmx dosyası bile oluşturabilirsiniz.
2) Daha Fazla Kontrol
İlk önce DB'ye gittiğinizde, uygulamanızda kullanmak için modelleriniz için üretilenlerin merhametindesiniz. Bazen adlandırma kuralı istenmeyen bir durumdur. Bazen ilişkiler ve çağrışımlar istediğiniz gibi olmayabilir. Diğer zamanlarda tembel yükleme ile geçici olmayan ilişkiler API yanıtlarınıza zarar verir.
Karşılaşabileceğiniz model oluşturma sorunları için neredeyse her zaman bir çözüm olsa da, gitme kodu ilk olarak size başlangıçtan itibaren tam ve ince taneli kontrol sağlar. Hem kod modellerinizin hem de veritabanı tasarımınızın her yönünü iş nesnenizin rahatlığında kontrol edebilirsiniz. İlişkileri, kısıtlamaları ve ilişkilendirmeleri tam olarak belirleyebilirsiniz. Aynı anda özellik karakter sınırlarını ve veritabanı sütun boyutlarını ayarlayabilirsiniz. Hangi ilgili koleksiyonların istekli olarak yükleneceğini veya hiç serileştirilmeyeceğini belirtebilirsiniz. Kısacası, daha fazla şeyden siz sorumlusunuz, ancak uygulama tasarımınızı tamamen kontrol ediyorsunuz.
3) Veritabanı Sürümü Kontrolü
Bu büyük bir tane. Veritabanlarını sürümlemek zordur, ancak önce kod ve ilk kod geçişleri ile çok daha etkilidir. Veritabanı şemanız tam olarak kod modellerinize dayandığından, kaynak kodunuzu kontrol ederek sürümle veritabanınızı sürümlendirmeye yardımcı oluyorsunuz. Tohum sabit işletme verileri gibi şeyleri yapmanıza yardımcı olabilecek bağlam başlatmanızı kontrol etmek sizin sorumluluğunuzdadır. Önce kod taşımalarını oluşturmaktan da sorumlusunuz.
Taşıma işlemlerini ilk kez etkinleştirdiğinizde, bir yapılandırma sınıfı ve bir ilk taşıma oluşturulur. İlk taşıma, geçerli şemanız veya temel sürüm 1.0'ınızdır. Bu noktadan sonra, sürümlerin sıralanmasına yardımcı olmak için zaman damgası eklenmiş ve bir tanımlayıcı ile etiketlenmiş taşıma işlemleri ekleyeceksiniz. Paket yöneticisinden add-migration çağırdığınızda, hem UP () hem de DOWN () işlevinde kod modelinizde otomatik olarak değişen her şeyi içeren yeni bir migrasyon dosyası oluşturulur. YUKARI işlevi veritabanındaki değişiklikleri uygular, AŞAĞI işlevi geri almak istediğiniz olaydaki aynı değişiklikleri kaldırır. Dahası, bu görünüm dosyalarını yeni görünümler, dizinler, saklı yordamlar ve başka her şey gibi ek değişiklikler eklemek için düzenleyebilirsiniz. Veritabanı şemanız için gerçek bir sürüm sistemi haline gelecektir.