Các thao tác cấu hình cho ứng dụng dùng mô hình CSDL Entity FrameWork code first 2.. Một số thao tác cơ bản trên CSDL 2... • Việc truy vấn LINQ với mô hình Entity Framework EF hay LINQ
Trang 1Buổi 7
Mô hình CSDL Entity Framework
code first
Trang 2Mục tiêu
1 Các thao tác cấu hình cho ứng
dụng dùng mô hình CSDL Entity FrameWork code first
2 Tạo CSDL
3 Cài đặt SqlServer Compact
4 Một số thao tác cơ bản trên
CSDL
2
Trang 3Tạo CSDL
Trang 5• Việc truy vấn LINQ với mô hình Entity Framework (EF) hay LINQ to SQL để thay thế ADO.Net giúp xây dựng các ứng dụng CSDL cũng trở nên đơn giản và thống nhất
Trang 7C1 Cấu hình EF và SQL Compact
• EntityFramework được tích hợp sẵn khi cài Visual Studio
“C:\Program Files\Microsoft Visual Studio\2017\Community\Common7\IDE”
Trang 8C1 Cấu hình EF và SQL Compact
• EntityFramework được tích hợp sẵn khi cài Visual Studio
“C:\Program Files\Microsoft Visual Studio\2017\Community\Common7\IDE”
Trang 9C1 Cấu hình EF và SQL Compact
• System.Data.Entity.dll là thư viện hệ thống (System) trong Assemblies của hệ thống
Trang 10C1 Cấu hình EF và SQL Compact
• System.ComponentModel.DataAnnotations.dll
“C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2”
Trang 13Khai báo Model và dữ
liệu mặc định
Trang 14B1 Tạo lớp Model định nghĩa bảng DL
Tạo thư mục Model, và định nghĩa các Lớp tương ứng (các bảng DL)
VD: Định nghĩa lớp Category chứa 2 thành phần dữ liệu
(ID: Mã loại, Name: Tên loại)
namespace EntityFrameWorkExample.View
{
public class Category
{
public int ID { get ; set ; }
public string Name { get ; set ; }
}
}
Trang 15public DbSet<Category> Categories { get ; set ; }
protected override void OnModelCreating(DbModelBuilder
modelBuilder)
Trang 16B3 Tạo dữ liệu khởi tạo ban đầu
• Tạo Lớp dữ liệu ban đầu cho ứng dụng bằng cách hiện
thực IDatabaseInitializer<TContext>
• Cho phép xóa, tạo lại và c ung cấp lại dữ liệu cho CSDL
khi CSDL được tạo
• Để cung cấp giá trị cho CSDL, tạo một lớp dẫn xuất và
override phương thức Seed
Trang 17VD: Tạo lớp DefaultData chứa DL ban đầu cho bảng Category
new Category { ID = 1, Name = "Category 1" },
new Category { ID = 2, Name = "Category 2" },
new Category { ID = 3, Name = "Category 3" },
new Category { ID = 4, Name = "Category 4" },
Trang 19Cài đặt Sql Server Compact cho EF
Trang 20Cài đặt Sql Server Compact cho EF
Sau khi cài đặt xong, kiểm tra cài đặt trong file App.config của Project ứng dụng
Trang 21Các thao tác cơ bản
var db = new MyEntity();
Giả sử có đối tượng category thuộc lớp Category
3 Sửa dữ liệu: db.Entry(category).State =
EntityState.Modified;
Trang 22Q&A
22