Buổi 7 Mô hình CSDL Entity Framework code first

Slides:



Advertisements
Similar presentations
Báo cáo Cấu trúc đề thi PISA và Các dạng câu hỏi thi PISA
Advertisements

MỘT SỐ TÁC GIẢ TIÊU BIỂU ( ) Nhóm tự lực văn đoàn và phong trào thơ mới. Ngoài ra còn có các nhóm: Phong hóa, Ngày nay, Hà Nội báo (Huy Thông,
XÂY DỰNG VÀ PHÁT TRIỂN CHƯƠNG TRÌNH ĐÀO TẠO THEO ĐỀ XƯỚNG CDIO
CÁC THUẬT TOÁN TÌM KIẾM TRÊN ĐỒ THỊ
Kiểm thử và đảm bảo chất lượng phần mềm
PHẦN 1. HỆ ĐIỀU HÀNH WINDOWS. 2 Nội dung trình bày  1.1. Thao tác cơ bản sử dụng máy tính  1.2. Màn hình nền desktop  1.3. Quản lý tệp tin và thư mục.
L/O/G/O NGUYÊN LÝ KẾ TOÁN Nguyễn Hữu Quy (MBA,CPA,APC)
CHÍNH SÁCH VÀ TRIỂN KHAI CHÍNH SÁCH BẢO MẬT
Bài giảng e-Learning Bài giảng e-Learning là sản phẩm được tạo ra từ các công cụ tạo bài giảng (authoring tools), có khả năng tích hợp đa phương tiện.
PowerPoint Template
Thực hiện các cuộc họp quan trọng
PGS. TS. Trần Cao Đệ Bộ môn Công nghệ Thông tin
TẬP HUẤN TÀI CHÍNH CÔNG ĐOÀN NĂM 2015
MICROSOFT VISUAL BASIC
Ghi chú chung về khóa học
TÌM HIỂU VỀ WEB SERVICES VÀ XÂY DỰNG MỘT WEB SERVICE
Giới thiệu các Controls trong VC6.0
Giới thiệu chương trình trách nhiệm xã hội của doanh nghiệp
Chương 3 SQL Structured Query Language Phần 1.
KHAI PHÁ DỮ LIỆU (DATA MINING)
Lập trình Visual Studio .NET
CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT
Software testing Kiểm thử phần mềm
VI MẠCH ĐiỀU KHIỂN VÀ CẤU TRÚC BUS TRONG MÁY TÍNH
Ngôn ngữ lập trình C/C++
KỸ THUẬT LẬP TRÌNH GV: Phạm Thị Xuân Diệu
Chương 6 Thiết kế hệ thống.
Module 6 – Managing for Sustainability
Hệ điều hành Windows Sever 2003
CHƯƠNG 2 TRUY VẤN DỮ LIỆU.
Các kỹ thuật tấn công lỗ hổng website
TRUYỀN THÔNG VỀ PHÒNG CHỐNG BỆNH DO VI RÚT ZIKA 1
Theo mặc định toàn bộ dung lượng dùng lưu trữ, các thư mục hiện có trong các Partition , các dịch vụ hệ thống đã được chia sẽ cho mọi người được phép sử.
Tổng Quan Về Lập Trình Hướng Đối Tượng
Chương 3 Mô hình dữ lịêu quan hệ
Phần 2: Ngôn ngữ lập trình C++
E-LEARNING TỪ POWERPOINT
Bài 6 Gắn kết dữ liệu 6.1 Khái niệm
Chương 6 Thiết kế hướng đối tượng
Chương 4 Phân tích kiến trúc (Architecture)
Con trỏ và mảng cấp phát động trong C++
KỸ THUẬT LẬP TRÌNH GV: Phạm Thị Xuân Diệu
LẬP TRÌNH ỨNG DỤNG WINDOW FORM
Quản lý con người Quản lý người làm việc như những cá nhân và theo nhóm.
THUYẾT TRÌNH JAVASCRIPT
Biến và Kiểu Dữ Liệu Chương 2.
HƯỚNG DẪN SỬ DỤNG PHẦN MỀM ADOBE PRESENTER
Bài 5: ADO.NET 5.1. Khái niệm 5.2. Các lớp và không gian tên cơ bản của ADO.NET 5.3. Thao tác với dữ liệu kết nối – Connected 5.4. Thao tác với dữ liệu.
Operators and Expression
USE R & GROUP.
Trách nhiệm giải trình của doanh nghiệp ở diện rộng
QUYỀN LỰC VÀ MÂU THUẪN TRONG NHÓM
Chương 2 Căn bản về Cung và Cầu 1.
Phòng Công nghệ Thông tin
QUẢN TRỊ TÍNH ĐA DẠNG THÔNG QUA NHIỀU HOẠT ĐỘNG KINH DOANH
Môn: Lập trình Hướng đối tượng (Object Oriented Programming)
GIỚI THIỆU CHUNG VỀ THIẾT KẾ DỮ LIỆU
Chapter 05 BẢO MẬT TRONG HỆ THỐNG WLAN
HƯỚNG DẪN MÃ HÓA BỆNH TẬT, TỬ VONG THEO ICD - 10
Giới thiệu : Trong Windows XP trở về sau, tích hợp sẵn 1 công cụ rất hay đó là Group Policy. Group Policy là 1 trong các thành phần của Microsoft Management.
Lập trình Visual Studio .NET
OBJECT-ORIENTED ANALYSIS AND DESIGN WITH UML 2.0
Social Network Games PHP DAY
Giới thiệu : Trong Windows XP trở về sau, tích hợp sẵn 1 công cụ rất hay đó là Group Policy. Group Policy là 1 trong các thành phần của Microsoft Management.
Trường CĐ CNTT HN Việt Hàn
SEMINAR: MÁY STM (SCANNING TUNNELING MICROSCOPE)
KHAI THÁC THỦY SẢN ĐẠI CƯƠNG
Đầu tiên chỉ là 1 giao thức đơn giản
So sánh marketing online & marketing truyền thống
Presentation transcript:

Buổi 7 Mô hình CSDL Entity Framework code first Trần Minh Thái Chương 0

Mục tiêu Các thao tác cấu hình cho ứng dụng dùng mô hình CSDL Entity FrameWork code first Tạo CSDL Cài đặt SqlServer Compact Một số thao tác cơ bản trên CSDL Chương 0

Tạo CSDL

Mục tiêu Tìm hiểu về việc xây dựng CSDL Có thể dùng CSDL SQL Server, SQL Compact SQL Compact có thể được triển khai như 1 phần của project mà không yêu cầu máy client phải cài đặt SQL Server 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 hơn

C1. Cấu hình EF và SQL Compact Add references EntityFramework.dll System.Data.Entity.dll System.ComponentModel.DataAnnotations.dll (Các Attribute định nghĩa CSDL)

C1. 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”

C1. 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”

C1. 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

C1. Cấu hình EF và SQL Compact System.ComponentModel.DataAnnotations.dll “C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2”

C2. Cấu hình EF và SQL Compact Cài đặt bằng Nuget Vào menu Tool\NuGet Package Manager\Package Manager Console Install-Package EntityFramework Visual Studio tự động download gói EF trong thư mục Packages, và tự động add các thư viện dll vào dự án

Cấu hình EF và SQL Compact Sau khi add reference thành công

Khai báo Model và dữ liệu mặc định

B1. 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; } }

B2. Định nghĩa mô hình CSDL Tạo Lớp kế thừa DbDataContext để định nghĩa mô hình CSDL dùng Entity Framework VD: Tạo lớp MyEntity using System.Data.Entity; using System.Data.Entity.ModelConfiguration.Conventions; namespace EntityFrameWorkExample.View { public class MyEntity: DbContext public DbSet<Category> Categories { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); }

B3. 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

VD: Tạo lớp DefaultData chứa DL ban đầu cho bảng Category namespace EntityFrameWorkExample.View { public class DefaultData : DropCreateDatabaseIfModelChanges<MyEntity> protected override void Seed(MyEntity context) new List<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" }, new Category { ID = 5, Name = "Category 5" } }.ForEach(m => context.Categories.Add(m)); }

B4. Đăng ký dữ liệu mặc định using System.Windows; using System.Data.Entity; using EntityFrameWorkExample.View; namespace EntityFrameWorkExample { /// <summary> /// Interaction logic for App.xaml /// </summary> public partial class App : Application protected override void OnStartup(StartupEventArgs e) base.OnStartup(e); Database.SetInitializer(new DefaultData()); }

Cài đặt Sql Server Compact cho EF

Cà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

var db = new MyEntity(); Các thao tác cơ bản var db = new MyEntity(); Giả sử có đối tượng category thuộc lớp Category 1. Thêm mới dữ liệu: db.Categories.Add(category); 2. Xóa dữ liệu: db.Categories.Remove(category); 3. Sửa dữ liệu: db.Entry(category).State = EntityState.Modified; Các thao tác trên chỉ thay đổi trên bộ nhớ Entity  gọi db.SaveChanges() để lưu xuống CSDL

Q&A