Entity Framework - ภาพรวม
Entity Framework คืออะไร?
Entity Framework เปิดตัวครั้งแรกในปี 2008 ซึ่งเป็นวิธีการหลักของ Microsoft ในการโต้ตอบระหว่างแอปพลิเคชัน. NET และฐานข้อมูลเชิงสัมพันธ์ Entity Framework คือ Object Relational Mapper (ORM) ซึ่งเป็นเครื่องมือประเภทหนึ่งที่ช่วยลดความซับซ้อนในการแมประหว่างอ็อบเจ็กต์ในซอฟต์แวร์ของคุณไปยังตารางและคอลัมน์ของฐานข้อมูลเชิงสัมพันธ์
Entity Framework (EF) คือโอเพ่นซอร์ส ORM framework สำหรับ ADO.NET ซึ่งเป็นส่วนหนึ่งของ. NET Framework
ORM ดูแลการสร้างการเชื่อมต่อฐานข้อมูลและดำเนินการคำสั่งตลอดจนรับผลการสืบค้นและกำหนดผลลัพธ์เหล่านั้นโดยอัตโนมัติเป็นวัตถุแอปพลิเคชันของคุณ
ORM ยังช่วยติดตามการเปลี่ยนแปลงของออบเจ็กต์เหล่านั้นและเมื่อได้รับคำแนะนำก็จะยังคงมีการเปลี่ยนแปลงเหล่านั้นกลับไปที่ฐานข้อมูลให้คุณด้วย
ทำไมต้องเป็น Entity Framework
Entity Framework คือ ORM และ ORM มีวัตถุประสงค์เพื่อเพิ่มประสิทธิภาพการทำงานของนักพัฒนาโดยการลดงานที่ซ้ำซ้อนในการคงข้อมูลที่ใช้ในแอปพลิเคชัน
Entity Framework สามารถสร้างคำสั่งฐานข้อมูลที่จำเป็นสำหรับการอ่านหรือเขียนข้อมูลในฐานข้อมูลและดำเนินการให้คุณ
หากคุณกำลังค้นหาคุณสามารถแสดงข้อความค้นหาของคุณเทียบกับวัตถุโดเมนของคุณโดยใช้ LINQ ไปยังเอนทิตี
Entity Framework จะดำเนินการค้นหาที่เกี่ยวข้องในฐานข้อมูลจากนั้นสร้างผลลัพธ์เป็นอินสแตนซ์ของอ็อบเจ็กต์โดเมนของคุณเพื่อให้คุณทำงานภายในแอพของคุณ
มี ORM อื่น ๆ ในตลาดเช่น NHibernate และ LLBLGen Pro โดยทั่วไป ORM ส่วนใหญ่จะแมปประเภทโดเมนกับสคีมาฐานข้อมูลโดยตรง
Entity Framework มีเลเยอร์การแมปที่ละเอียดขึ้นเพื่อให้คุณสามารถปรับแต่งการแมปได้เองตัวอย่างเช่นโดยการแมปเอนทิตีเดียวกับตารางฐานข้อมูลหลายตารางหรือแม้แต่เอนทิตีหลายรายการกับตารางเดียว
Entity Framework เป็นเทคโนโลยีการเข้าถึงข้อมูลที่แนะนำสำหรับแอปพลิเคชันใหม่ของ Microsoft
ADO.NET ดูเหมือนจะอ้างถึงเทคโนโลยีสำหรับชุดข้อมูลและตารางข้อมูลโดยตรง
Entity Framework คือที่ที่มีการลงทุนแบบก้าวไปข้างหน้าทั้งหมดซึ่งเป็นกรณีนี้มาหลายปีแล้ว
Microsoft แนะนำให้คุณใช้ Entity Framework บน ADO.NET หรือ LINQ กับ SQL สำหรับการพัฒนาใหม่ทั้งหมด
รูปแบบความคิด
สำหรับนักพัฒนาที่คุ้นเคยกับการพัฒนาที่เน้นฐานข้อมูลการเปลี่ยนแปลงที่ยิ่งใหญ่ที่สุดของ Entity Framework คือช่วยให้คุณมุ่งเน้นไปที่โดเมนธุรกิจของคุณ คุณต้องการให้แอปพลิเคชันของคุณทำอะไรโดยไม่ถูก จำกัด โดยสิ่งที่ฐานข้อมูลสามารถทำได้?
ด้วย Entity Framework จุดโฟกัสจะเรียกว่าแบบจำลองแนวคิด เป็นแบบจำลองของวัตถุในแอปพลิเคชันของคุณไม่ใช่แบบจำลองของฐานข้อมูลที่คุณใช้เพื่อคงข้อมูลแอปพลิเคชันของคุณ
แบบจำลองแนวคิดของคุณอาจเกิดขึ้นเพื่อให้สอดคล้องกับสคีมาฐานข้อมูลของคุณหรืออาจแตกต่างกันมาก
คุณสามารถใช้ Visual Designer เพื่อกำหนดแบบจำลองแนวคิดของคุณซึ่งจะสร้างคลาสที่คุณจะใช้ในแอปพลิเคชันของคุณในท้ายที่สุด
คุณสามารถกำหนดคลาสของคุณและใช้คุณสมบัติของ Entity Framework ที่เรียกว่า Code First จากนั้น Entity Framework จะเข้าใจรูปแบบแนวคิด
ไม่ว่าจะด้วยวิธีใด Entity Framework จะหาวิธีย้ายจากแบบจำลองแนวคิดของคุณไปยังฐานข้อมูลของคุณ ดังนั้นคุณสามารถสอบถามกับวัตถุโมเดลแนวความคิดของคุณและทำงานกับวัตถุเหล่านั้นได้โดยตรง
คุณสมบัติ
ต่อไปนี้เป็นคุณสมบัติพื้นฐานของ Entity Framework รายการนี้สร้างขึ้นตามคุณสมบัติที่โดดเด่นที่สุดและจากคำถามที่พบบ่อยเกี่ยวกับ Entity Framework
- Entity Framework เป็นเครื่องมือของ Microsoft
- Entity Framework กำลังได้รับการพัฒนาเป็นผลิตภัณฑ์ Open Source
- Entity Framework ไม่เชื่อมโยงหรือขึ้นอยู่กับวงจรการเผยแพร่. NET อีกต่อไป
- ทำงานร่วมกับฐานข้อมูลเชิงสัมพันธ์กับผู้ให้บริการ Entity Framework ที่ถูกต้อง
- การสร้างคำสั่ง SQL จาก LINQ ไปยังเอนทิตี
- Entity Framework จะสร้างแบบสอบถามที่กำหนดพารามิเตอร์
- ติดตามการเปลี่ยนแปลงของวัตถุในหน่วยความจำ
- อนุญาตให้แทรกอัปเดตและลบการสร้างคำสั่ง
- ทำงานร่วมกับโมเดลภาพหรือกับชั้นเรียนของคุณเอง
- Entity Framework ได้จัดเก็บ Procedure Support