Entity Framework là framework ánh xạ quan hệ đối tượng (ORM - Object Relational Mapping) cung cấp cơ chế tự động cho các nhà phát triển để lưu trữ và truy cập dữ liệu trong cơ sở dữ liệu.
Hướng dẫn này tập trung vào các tính năng của Entity Framework Code First. Nó cũng giải thích các tính năng mới được giới thiệu trong Entity Framework 6.
Hướng dẫn này được thiết kế cho những người muốn tìm hiểu cách bắt đầu lập trình Entity Framework trong ứng dụng của họ.
Bạn nên có kiến thức cơ bản về Visual Studio, lập trình C# và MS SQL Server để tận dụng tối đa hướng dẫn này.
Entity Framework được phát hành lần đầu tiên vào năm 2008, nó là phương tiện tương tác chính giữa các ứng dụng .NET và cơ sở dữ liệu quan hệ.
Entity Framework là một ánh xạ quan hệ đối tượng (ORM), là một loại công cụ giúp đơn giản hóa ánh xạ giữa các đối tượng trong phần mềm của bạn với các bảng và cột của cơ sở dữ liệu quan hệ.
Entity Framework được thiết kế nhằm mục đích tăng năng suất của nhà phát triển bằng cách giảm các công việc dư thừa như là duy trì dữ liệu được sử dụng trong các ứng dụng.
Có các ORM khác trên thị trường như NHibernate và LLBLGen Pro. Hầu hết các ORM thường ánh xạ các loại miền trực tiếp vào lược đồ cơ sở dữ liệu.
Entity Framework có lớp ánh xạ chi tiết hơn để bạn có thể tùy chỉnh ánh xạ. Ví dụ, bằng cách ánh xạ một thực thể vào nhiều bảng trong cơ sở dữ liệu hoặc thậm chí nhiều thực thể vào một bảng.
Sau đây là các tính năng cơ bản của Entity Framework. Danh sách này được tạo dựa trên các tính năng đáng chú ý nhất và cũng từ các câu hỏi thường gặp về Entity Framework.
Kiến trúc của Entity Framework được minh họa trong hình sau:
Application (ứng dụng) là tầng chứa giao diện tương tác với người dùng, có thể là ứng dụng web hoặc ứng dụng Windows Forms. Tầng này thường sử dụng Repository pattern để làm việc với cơ sở dữ liệu thông qua Entity Framework.
Object Services là tầng chứa quá trình tương tác giữa ứng dụng và database, hay nói cách khác nó là nơi chủ yếu để truy cập dữ liệu từ database và trả ngược kết quả về giao diện. Object Services cung cấp các tiện ích để truy vết các thay đổi và cập nhật thay đổi trở lại ở database.
Đây là tầng cung cấp các kết nối, diễn dịch các truy vấn thực thể thành truy vấn nguồn dữ liệu, trả về data reader để EF dùng chuyển dữ liệu thực thể thành các đối tượng. Phần này kết nối ADO.NET Data Providers để gửi hoặc lấy dữ liệu từ database.
Đây là tầng thấp nhấp để dịch các truy vấn LINQ to Entity thành các câu lệnh SQL và thực thi các câu lệnh trong hệ thống DBMS. Tầng này kết với database sử dụng ADO.NET.
Entity Data Model gồm 3 phần chính: mô hình khái niệm (CSDL – Conceptual schema definition language), mô hình ánh xạ (MSL – mapping specification language) và mô hình lưu trữ (SSDL – store schema definition language). Entity Data Model khác với EntityClient Data Provider ở chỗ nó sử dụng LINQ là ngôn ngữ truy vấn tương tác với database.
Mô hình khái niệm (CSDL)
Mô hình khái niệm chứa các lớp mô hình và mối quan hệ giữa các lớp này. Nó độc lập với mô hình quan hệ các bảng trong database.
Mô hình lưu trữ (SSDL)
Mô hình lưu trữ là 1 mô hình thiết kế database bao gồm các table, view, stored procedure, mối quan hệ giữa chúng các bảng và khóa. Mô hình này thể hiện gần giống mô hình quan hệ các bảng trong database.
Mô hình ánh xạ (MSL)
Mô hình ánh xạ gồm thông tin về cách mô hình khái niệm được ánh xạ đến mô hình lưu trữ.
Ở hướng dẫn tiếp theo chúng ta sẽ tìm hiểu về cách thiết lập môi trường để bắt đầu làm việc với Entity Framework.
Bạn có thể vui lòng tắt trình chặn quảng cáo ❤️ để hỗ trợ chúng tôi duy trì hoạt động của trang web.
2 kịch bản lưu dữ liệu trong Entity Framework Core là kịch bản được kết nối và kịch bản ngắt kết nối.
Tạo ứng dụng .NET Core Console đầu tiên và cấu hình sử dụng Entity Framework Core.
Truy vấn trong Entity Framework Core có gì mới? Truy vấn trong EF Core khác EF ở những điểm nào.
Entity Framework Core toàn tập sẽ hướng dẫn bạn tất cả mọi thứ về Entity Framework Core.