Entity Framework Hakkında

Nadide Yüksekkaya Nadide Yüksekkaya
12.04.2016 19:07


Entity Framework, Microsoft tarafından geliştirilen, .Net tabanlı bir Object Relational Mapping (ORM) aracıdır. ORM, ilişkisel veri tabanı (RDMBS) ile nesneye yönelik programlama (OOP) arasındaki bağlantıyı sağlayan ve veri tabanındaki verileri yönetmek için, oluşturulan nesne modellerini kullanan metottur.

Entity Framework (EF) ile, nesne tabanlı bir programda, veri tabanındaki tablolara karşılık gelen nesneler oluşturulur. Yani, veri modellemesi yapılır. Entity Framework kullanarak hem bağlantı yapılır hem de arka planda SQL komutu oluşturulur. Veri işlemleri için kullanılan CRUID - Create (oluşturma), Read (okuma), Update (güncelleme), Insert (ekleme), Delete (silme) fonksiyonlarını daha kolay hale getirir. Özellikle MVC projelerinde kullanılır.

Entity Framework üç farklı yöntem ile uygulanır

  • Model First: Boş bir model dosyası oluşturulur. Veri tabanı bu modele kurulur.
  • Database First: Önce veri tabanı oluşturulur veya hazır veri tabanı Entity Framework ile programa bağlanır.
  • Code First (Yeni Veritabanı): Veri tabanı programda, context içinde oluşturulur. Context içinde datasetler ve classlar yazılarak Entity Framework ile modelleme yapılırken tablolar bu sınıflara göre otomatik oluşur. Yazılan sınıflar veri tabanındaki tablolara karşılık gelmektedir.

Entity Framework Kullanmanın Avantajları

  • Veri tabanı işlemleri daha kolay yapılır.
    Her işlem oluşturulan nesneler üzerinden gerçekleştirildiği için uzun veri tabanı sorguları yazmak gerekmez.
  • Proje daha hızlı biter. Minimum zamanda maksimum iş yapılmasını sağlar.
  • Nesneye yönelik programlamaya (OOP) uygundur.
  • Veri tabanı bağımlılığı yoktur.
  • Esnek bir kullanıma sahiptir.

Veri tabanı yönetim sistemleri (DBMS) arasında geçiş yapılabilir, örneğin MS-SQL'de oluşturulan veri tabanı MySQL’e taşınabilir.

Entity Framework Kullanmanın Dezavantajları

  • Entity Framework performans açısından klasik Ado.Net uygulamalarına göre daha yavaş çalışır.
  • Nesne bağlılığından dolayı, oluşturulan sql ifadelerinde sorun çıkabilir.
Admin Akademi
Kendinizi Geleceğe Hazırlayın