Entity Framework là gì

0
757

Entity Framework là một framework của Microsoft được sử dụng để xây dựng các ứng dụng truy cập cơ sở dữ liệu dựa trên các đối tượng. Nó cho phép lập trình viên truy cập dữ liệu từ cơ sở dữ liệu bằng cách sử dụng các đối tượng và thực hiện các thao tác trên chúng, thay vì sử dụng các câu lệnh SQL truyền thống.

Entity Framework hỗ trợ nhiều cơ sở dữ liệu khác nhau, bao gồm Microsoft SQL Server, MySQL, Oracle, SQLite, PostgreSQL và nhiều hơn nữa. Nó cung cấp cho lập trình viên các đối tượng (object) được ánh xạ từ cơ sở dữ liệu (database), giúp cho việc thao tác với cơ sở dữ liệu trở nên dễ dàng hơn và tiết kiệm thời gian.

Để minh họa, dưới đây là một ví dụ đơn giản về việc sử dụng Entity Framework để thao tác với cơ sở dữ liệu trong ASP.NET MVC:

  • Tạo database:
CREATE DATABASE ExampleDB;
GO
USE ExampleDB;
GO
CREATE TABLE Customers (
  CustomerID int PRIMARY KEY,
  Name nvarchar(50),
  Email nvarchar(50),
  PhoneNumber nvarchar(50)
);
  • Tạo project ASP.NET MVC
  • Cài đặt Entity Framework thông qua NuGet
Install-Package EntityFramework
  • Tạo lớp đối tượng Customer tương ứng với bảng Customers trong cơ sở dữ liệu:
public class Customer
{
    public int CustomerID { get; set; }
    public string Name { get; set; }
    public string Email { get; set; }
    public string PhoneNumber { get; set; }
}
  • Tạo DbContext để kết nối và quản lý cơ sở dữ liệu:
public class ExampleDBContext : DbContext
{
    public ExampleDBContext() : base("ExampleDBConnectionString")
    {
    }

    public DbSet Customers { get; set; }
}
  • Thực hiện các thao tác với cơ sở dữ liệu bằng cách sử dụng Entity Framework:
public class HomeController : Controller
{
    private ExampleDBContext db = new ExampleDBContext();

    public ActionResult Index()
    {
        // Lấy danh sách khách hàng
        var customers = db.Customers.ToList();
        return View(customers);
    }

    public ActionResult Create()
    {
        return View();
    }

    [HttpPost]
    public ActionResult Create(Customer customer)
    {
        if (ModelState.IsValid)
        {
            // Thêm mới khách hàng
            db.Customers.Add(customer);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(customer);
    }
}

Ở ví dụ trên, chúng ta đã tạo một cơ sở dữ liệu Customers, tạo lớp đối tượng Customer tương ứng với bảng Customers.

Cảm ơn các bạn đã đọc bài, nếu có thắc mắc vấn đề gì xin vui lòng bình luận phía dưới.Mình cảm ơn ạ.