Entity Framework - สถาปัตยกรรม
สถาปัตยกรรมของ Entity Framework จากล่างขึ้นบนประกอบด้วยสิ่งต่อไปนี้ -
ผู้ให้บริการข้อมูล
สิ่งเหล่านี้เป็นผู้ให้บริการเฉพาะต้นทางซึ่งเป็นนามธรรมของอินเทอร์เฟซ ADO.NET เพื่อเชื่อมต่อกับฐานข้อมูลเมื่อเขียนโปรแกรมกับสคีมาแนวความคิด
แปลภาษา SQL ทั่วไปเช่น LINQ ผ่านทางทรีคำสั่งเป็นนิพจน์ SQL ดั้งเดิมและดำเนินการกับระบบ DBMS เฉพาะ
ไคลเอนต์เอนทิตี
เลเยอร์นี้จะแสดงเลเยอร์เอนทิตีไปที่ชั้นบน ไคลเอนต์เอนทิตีให้ความสามารถสำหรับนักพัฒนาในการทำงานกับเอนทิตีในรูปแบบของแถวและคอลัมน์โดยใช้เคียวรี SQL เอนทิตีโดยไม่จำเป็นต้องสร้างคลาสเพื่อแสดงสคีมาแนวคิด ไคลเอนต์เอนทิตีแสดงเลเยอร์เฟรมเวิร์กเอนทิตีซึ่งเป็นฟังก์ชันหลัก เลเยอร์เหล่านี้เรียกว่าแบบจำลองข้อมูลเอนทิตี
Storage Layer มีสกีมาฐานข้อมูลทั้งหมดในรูปแบบ XML
Entity Layer ซึ่งเป็นไฟล์ XML กำหนดเอนทิตีและความสัมพันธ์
Mapping layer เป็นไฟล์ XML ที่แมปเอนทิตีและความสัมพันธ์ที่กำหนดไว้ที่เลเยอร์แนวคิดด้วยความสัมพันธ์จริงและตารางที่กำหนดไว้ที่เลเยอร์ตรรกะ
Metadata services ซึ่งแสดงใน Entity Client ยังให้ API แบบรวมศูนย์เพื่อเข้าถึงเมทาดาทาที่จัดเก็บเลเยอร์เอนทิตีการแมปและที่เก็บข้อมูล
บริการวัตถุ
เลเยอร์ Object Services คือ Object Context ซึ่งแสดงถึงเซสชันของการโต้ตอบระหว่างแอ็พพลิเคชันและแหล่งข้อมูล
การใช้ Object Context หลักคือการดำเนินการต่างๆเช่นเพิ่มลบอินสแตนซ์ของเอนทิตีและบันทึกสถานะที่เปลี่ยนแปลงกลับไปยังฐานข้อมูลด้วยความช่วยเหลือของแบบสอบถาม
เป็นเลเยอร์ ORM ของ Entity Framework ซึ่งแสดงถึงผลลัพธ์ข้อมูลไปยังอินสแตนซ์ออบเจ็กต์ของเอนทิตี
บริการนี้ช่วยให้นักพัฒนาสามารถใช้คุณสมบัติ ORM ที่สมบูรณ์เช่นการแมปคีย์หลักการติดตามการเปลี่ยนแปลง ฯลฯ โดยการเขียนแบบสอบถามโดยใช้ LINQ และ Entity SQL