Model Oluşturma

EF modeli, uygulama sınıflarının ve özelliklerinin veritabanı tablo ve sütunlarıyla nasıl eşlendiğine ilişkin ayrıntıları depolar. EF modeli oluşturmanın iki ana yolu vardır:

  • Önce Kod Kullanma: Geliştirici modeli belirtmek için kod yazar. EF, varlık sınıflarını ve geliştirici tarafından sağlanan ek model yapılandırmasını temel alarak modelleri ve eşlemeleri çalışma zamanında oluşturur.

  • EF Designer'ı kullanma: Geliştirici, EF Designer'ı kullanarak modeli belirtmek için kutular ve çizgiler çizer. Elde edilen model, EDMX uzantısına sahip bir dosyada XML olarak depolanır. Uygulamanın etki alanı nesneleri genellikle kavramsal modelden otomatik olarak oluşturulur.

EF iş akışları

Bu yaklaşımların her ikisi de mevcut bir veritabanını hedeflemek veya yeni bir veritabanı oluşturmak için kullanılabilir ve bu da 4 farklı iş akışına neden olur. Sizin için en uygun olanı öğrenin:

Sadece kod yazmak istiyorum... Tasarımcı kullanmak istiyorum...
Yeni veritabanı oluşturuyorum Kodda modelinizi tanımlamak ve ardından bir veritabanı oluşturmak için Code First kullanın. Modelinizi kutular ve satırlar kullanarak tanımlamak ve ardından bir veritabanı oluşturmak için Önce Model'i kullanın.
Mevcut bir veritabanına erişmem gerekiyor Mevcut bir veritabanına eşleyen kod tabanlı bir model oluşturmak için Önce Kod'u kullanın. Var olan bir veritabanına eşleyen kutular ve çizgilerden oluşan bir model oluşturmak için Önce Veritabanı yaklaşımını kullanın.

Videoyu izleyin: Hangi EF iş akışını kullanmalıyım?

Bu kısa videoda farklar ve size uygun olanı nasıl bulacağınız açıklanmaktadır.

Sunum Yapan: Rowan Miller

Hangi İş Akışı Başparmak WMV | MP4 | WMV (ZIP)

Videoyu izledikten sonra EF Designer veya Code First kullanmak isteyip istemediğinize karar vermekte rahat değilseniz her ikisini de öğrenin!

Derinlemesine bir inceleme

Code First veya EF Designer kullanmanız fark etmeksizin, EF modelinin her zaman birkaç bileşeni vardır:

  • Uygulamanın etki alanı nesneleri veya varlık türleri kendileri. Bu genellikle nesne katmanı olarak adlandırılır

  • Varlık Veri Modeli kullanılarak açıklanan, etki alanına özgü varlık türleri ve ilişkilerinden oluşan kavramsal model. Bu katman genellikle kavramsal olarak "C" harfiyle adlandırılır.

  • Veritabanında tanımlanan tabloları, sütunları ve ilişkileri temsil eden bir depolama modeli. Bu katman genellikle depolama için daha sonraki "S" ile adlandırılır.

  • Kavramsal model ile veritabanı şeması arasında eşleme. Bu eşleme genellikle "C-S" eşlemesi olarak adlandırılır.

EF'nin eşleme altyapısı oluşturma, okuma, güncelleştirme ve silme gibi varlıklara yönelik işlemleri veritabanındaki tablolarla eşdeğer işlemlere dönüştürmek için "C-S" eşlemesini kullanır.

Kavramsal model ile uygulamanın nesneleri arasındaki eşleme genellikle "O-C" eşlemesi olarak adlandırılır. "C-S" eşlemesi ile karşılaştırıldığında, "O-C" eşlemesi örtük ve bire birdir: .NET nesnelerinin şekilleri ve türleriyle eşleştirmek için kavramsal modelde tanımlanan varlıklar, özellikler ve ilişkiler gereklidir. EF4 ve ötesinde, nesne katmanı EF'te herhangi bir bağımlılık olmadan özellikleri olan basit nesnelerden oluşabilir. Bunlar genellikle Plain-Old CLR Nesneleri (POCO) olarak adlandırılır ve türlerin ve özelliklerin eşlemesi ad eşleştirme kurallarına göre gerçekleştirilir. Daha önce EF 3.5'te varlıklarının EntityObject sınıfından türetilmiş olması ve "O-C" eşlemesini uygulamak için EF özniteliklerini taşıması gibi nesne katmanı için belirli kısıtlamalar vardı.