Entity Framework - Mimari
Entity Framework mimarisi, aşağıdan yukarıya, aşağıdakilerden oluşur:
Veri Sağlayıcılar
Bunlar, kavramsal şemaya göre programlama yaparken veritabanına bağlanmak için ADO.NET arabirimlerini soyutlayan kaynağa özgü sağlayıcılardır.
LINQ gibi yaygın SQL dillerini komut ağacı aracılığıyla yerel SQL ifadesine çevirir ve belirli DBMS sistemine karşı yürütür.
Varlık İstemcisi
Bu katman, varlık katmanını üst katmana maruz bırakır. Varlık istemcisi, geliştiricilere kavramsal şemayı temsil edecek sınıflar oluşturmaya gerek kalmadan varlık SQL sorgularını kullanarak satırlar ve sütunlar biçiminde varlıklara karşı çalışma yeteneği sağlar. Entity Client, temel işlevler olan varlık çerçeve katmanlarını gösterir. Bu katmanlara Varlık Veri Modeli adı verilir.
Storage Layer tüm veritabanı şemasını XML biçiminde içerir.
Entity Layer Bu aynı zamanda bir XML dosyası olan varlıkları ve ilişkileri tanımlar.
Mapping layer kavramsal katmanda tanımlanan varlıkları ve ilişkileri mantıksal katmanda tanımlanan gerçek ilişkiler ve tablolarla eşleyen bir XML dosyasıdır.
Metadata services Varlık İstemcisinde de temsil edilen, üst veride depolanan Varlık, Eşleme ve Depolama katmanlarına erişmek için merkezi API sağlar.
Nesne Hizmeti
Nesne Hizmetleri katmanı, uygulamalar ile veri kaynağı arasındaki etkileşim oturumunu temsil eden Nesne Bağlamıdır.
Nesne Bağlamının ana kullanımı, varlıkların örneklerini ekleme, silme gibi farklı işlemleri gerçekleştirmek ve değiştirilen durumu sorgular yardımıyla veritabanına geri kaydetmektir.
Varlıkların nesne örneklerine ilişkin veri sonucunu temsil eden Entity Framework ORM katmanıdır.
Bu hizmetler, geliştiricinin LINQ ve Entity SQL kullanarak sorgular yazarak birincil anahtar eşleme, değişiklik izleme vb.