SlideShare une entreprise Scribd logo
1  sur  14
GI I THI U ADO.NETỚ Ệ
ENTITY FRAMEWORK
minhtri.itp@gmail.com1
NỘI DUNG
2
I. GIỚI THIỆU ENTITY FRAMEWORK
Là nền tảng truy cập dữ liệu của Microsoft bao gồm
một tập hợp các kỹ thuật được kế thừa và phát triển từ
ADO.NET.
Giúp lấp đầy khoảng cách giữa lập trình hướng đối
tượng và cơ sở dữ liệu.
Phiên bản đầu tiên phát hành vào tháng 7 năm 2008
như một phần của Visual Studio 2008 SP1.
Entity Framework 4.1 là phiên bản mới nhất được
phát hành vào tháng 7 năm 2011.
3
II. KIẾN TRÚC
 Ki n trúc c a Entity Frameworkế ủ
4
II. KIẾN TRÚC (TT)
 Ki n trúc c a Entity Frameworkế ủ
I. Entity Data Model là s k tự ế
h p c a 3 mô hình:ợ ủ
1. Conceptual Schema
2. Mapping Schema
3. Logical Schema
Conceptual là mô hình quan
ni m d li u mô t các th c thệ ữ ệ ả ự ể
(entity/object) và m i quan hố ệ
gi a chúng.ữ
Mapping th c hi n nhi m vự ệ ệ ụ
ánh x gi a mô hình quan ni mạ ữ ệ
d li u và mô hình logicữ ệ
Logical(Storage) Mô t cácả
b ng d li u, view, procerdure vàả ữ ệ
m i quan h gi a chúngố ệ ữ
5
II. KIẾN TRÚC (TT)
 Truy v n d li u nh th nào?ấ ữ ệ ư ế
 Đó là câu h i đ c đ t ra c a các nhà phátỏ ượ ặ ủ
tri n Entity Framework t khi xây d ng.ể ừ ự
 S d ng SQL Query? N u s d ng s không hử ụ ế ử ụ ẽ ỗ
tr đ c nhi u h qu n tr c s d li u.ợ ượ ề ệ ả ị ơ ở ữ ệ
Ngôn ng truy v n chính đ c ch n làữ ấ ượ ọ
LINQ to Entities, bên c nh đó v n h tr m tạ ẫ ỗ ợ ộ
ngôn ng truy v n khác t ng t nh SQL đó làữ ấ ươ ự ư
Entity SQL, ngoài ra v i EF cho phép chúng ta cóớ
th g i tr c ti p m t câu l nh SQL hay m tể ọ ự ế ộ ệ ộ
Procerdure t database.ừ
6
NH NG Đ C ĐI M N I B T C A ENTITYỮ Ặ Ể Ổ Ậ Ủ
FRAMEWORK
 H tr cho nhi u h qu n tr c s d li uỗ ợ ề ệ ả ị ơ ở ữ ệ
o MSSQL Server, Oracle, MySql, PostgreSQL, SQL
Anywhere, DB2,Informix ,U2, Ingres, Progress,
Firebird, Synergy, Virtuoso
 T o ra mô hình chung gi a database và môạ ữ
hình th c th quan h c a ng d ngự ể ệ ủ ứ ụ
 Truy v n d li u thông qua Linq to Entitiesấ ữ ệ
 H tr ki u d li u ph c h p (Complex Typeỗ ợ ể ữ ệ ứ ợ
Support)
 H tr nhi u cách đ t o ra mô hình và có thỗ ợ ề ể ạ ể
hi u ch nh mô hình m t cách tr c quan (Modelệ ỉ ộ ự
Browser Improvements)
 Và m t s tính năng khác….ộ ố 7
II. NH NG Đ C ĐI M N I B T C AỮ Ặ Ể Ổ Ậ Ủ
ENTITY FRAMEWORK
 Linh ho t trong vi c mô hình hóa d li u h ngạ ệ ữ ệ ướ
đ i t ngố ượ
DB Model
DB Model
DB Model
Model First (VS 2010 and .NET 4.0)
Code First (Only) (Entity Framework Feature CTP5)
Database First (VS 2008 and .NET 3.5 SP1)
8
III.NHỮNG KHÓ KHĂN HIỆN NAY
 V i mô hình l p trình N- tier ng i l p trình ph iớ ậ ườ ậ ả
m t khá nhi u th i gian đ thi t k Data Accessấ ề ờ ể ế ế
Layer.
 V i mô hình (MVC,MVP) c n khá nhi u th i gian choớ ầ ề ờ
c u trúc Model.ấ
 Không ki m soát đ c thay đ i gi a Database và codeể ượ ổ ữ
ch ng trình(L i không phát hi n đ c).ươ ỗ ệ ượ
 Kh năng chuy n đ i HQTCSDL r t khó khăn.ả ể ổ ấ
 Ng i l p trình ph i hi u rõ ki n trúc và SQL Queryườ ậ ả ể ế
c a t ng h qu n tr c s d li u.ủ ừ ệ ả ị ơ ở ữ ệ
 Th i gian và chi phí s n xu t ph n m m tăngờ ả ấ ầ ề
 Khó khăn cho vi c b o trì và nâng c p ph n m m.ệ ả ấ ầ ề
9
IV.ENTITY FRAMEWORK GIẢI QUYẾT
NHỮNG KHÓ KHĂN NHƯ THẾ NÀO?
 V i vi c truy v n d li u thông qua Entity Dataớ ệ ấ ữ ệ
Model
 L p Data Access (N-Tier), Model (MVC,MVP) đã đ cớ ượ
Entity Framework h tr ng i l p trình ch t pỗ ợ ườ ậ ỉ ậ
trung vào nghi p v khác hàng (buisiness rule) vàệ ụ
giao di n ng i dùng.ệ ườ
 D dàng chuy n đ i sang h qu n tr c s dễ ể ổ ệ ả ị ơ ở ữ
li u khác.ệ
 Khi thay đ i c u trúc database ch c n ánh x l iổ ấ ỉ ầ ạ ạ
EDM.
 Nh ng l i do thay đ i c u trúc database đ cữ ỗ ổ ấ ượ
phát hi n ngay lúc biên d ch ch ng trình (Tránhệ ị ươ
đ c l i ti m n).ượ ỗ ề ẩ 10
IV.ENTITY FRAMEWORK GIẢI QUYẾT
NHỮNG KHÓ KHĂN NHƯ THẾ NÀO?
 Ng i l p trình ch c n bi t LINQ là có th truyườ ậ ỉ ầ ế ể
v n d li u không c n ph i bi t nhi u v c uấ ữ ệ ầ ả ế ề ề ấ
trúc SQL query, đ c đi m c a m i h qu n tr cặ ể ủ ỗ ệ ả ị ơ
s d li u.ở ữ ệ
 V i LINQ chúng ta có th chia các th t c SQLớ ể ủ ụ
ph c t p ra thành nhi u hàm, bi n l u tr dứ ạ ề ế ư ữ ữ
li u (Entity Object) theo ch c năng. Nh đó quáệ ứ ờ
trình Debug, b o trì, nâng c p đ c đ c th cả ấ ượ ượ ự
hi n d dàng h n.ệ ễ ơ
11
V. KẾT LUẬN
 V i nh ng tính năng Entity Framework cung c pớ ữ ấ
đ ng th i giúp chúng ta kh c ph c nh ng khóồ ờ ắ ụ ữ
khăn hi n t i.ệ ạ
S d ng Entityử ụ
Framework đ phátể
tri n ph n m mể ầ ề
12
VI.DEMO
13
THANK YOU!
14

Contenu connexe

Tendances

Phụ thuộc hàm và các dạng chuẩn - dhcntt
Phụ thuộc hàm và các dạng chuẩn - dhcnttPhụ thuộc hàm và các dạng chuẩn - dhcntt
Phụ thuộc hàm và các dạng chuẩn - dhcnttanhhuycan83
 
PHÂN CỤM DỮ LIỆU TRONG DATAMING.pdf
PHÂN CỤM DỮ LIỆU TRONG DATAMING.pdfPHÂN CỤM DỮ LIỆU TRONG DATAMING.pdf
PHÂN CỤM DỮ LIỆU TRONG DATAMING.pdfMan_Ebook
 
Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao
Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao
Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao nataliej4
 
đề thi java ptit
đề thi java ptitđề thi java ptit
đề thi java ptitNguynMinh294
 
SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)
SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)
SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)Pix Nhox
 
Bai 1 tong quan ve ctdl&gt
Bai 1   tong quan ve ctdl&gtBai 1   tong quan ve ctdl&gt
Bai 1 tong quan ve ctdl&gtTrangThu251076
 
Bai tap xác suất
Bai tap xác suấtBai tap xác suất
Bai tap xác suấtTzaiMink
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinVõ Phúc
 
Giáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mới
Giáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mớiGiáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mới
Giáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mớiLê Hữu Bảo
 
Clean code - Trở thành một lập trình viên tốt hơn
Clean code - Trở thành một lập trình viên tốt hơnClean code - Trở thành một lập trình viên tốt hơn
Clean code - Trở thành một lập trình viên tốt hơnNhật Nguyễn Khắc
 
14. Defining Classes
14. Defining Classes14. Defining Classes
14. Defining ClassesIntro C# Book
 
Danh Sach Lien Ket
Danh Sach Lien KetDanh Sach Lien Ket
Danh Sach Lien KetTony Nhân
 
Data mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụngData mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụngPhien Le
 
Cập nhật csdl ngay trên datagridview trong vb
Cập nhật csdl ngay trên datagridview trong vbCập nhật csdl ngay trên datagridview trong vb
Cập nhật csdl ngay trên datagridview trong vbANHMATTROI
 
Đề thi Kỹ thuật lập trình có lời giải
Đề thi Kỹ thuật lập trình có lời giảiĐề thi Kỹ thuật lập trình có lời giải
Đề thi Kỹ thuật lập trình có lời giảinataliej4
 
Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#Kuli An
 

Tendances (20)

Phụ thuộc hàm và các dạng chuẩn - dhcntt
Phụ thuộc hàm và các dạng chuẩn - dhcnttPhụ thuộc hàm và các dạng chuẩn - dhcntt
Phụ thuộc hàm và các dạng chuẩn - dhcntt
 
PHÂN CỤM DỮ LIỆU TRONG DATAMING.pdf
PHÂN CỤM DỮ LIỆU TRONG DATAMING.pdfPHÂN CỤM DỮ LIỆU TRONG DATAMING.pdf
PHÂN CỤM DỮ LIỆU TRONG DATAMING.pdf
 
Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao
Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao
Bài Giảng Môn Học Cơ Sở Dữ Liệu Nâng Cao
 
đề thi java ptit
đề thi java ptitđề thi java ptit
đề thi java ptit
 
SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)
SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)
SQL Cursor - kiểu dữ liệu Cursor (Kiểu dữ liệu con trỏ)
 
Đề tài: Quản lý hệ thống bán vé máy bay của Vietnam Airline, 9đ
Đề tài: Quản lý hệ thống bán vé máy bay của Vietnam Airline, 9đĐề tài: Quản lý hệ thống bán vé máy bay của Vietnam Airline, 9đ
Đề tài: Quản lý hệ thống bán vé máy bay của Vietnam Airline, 9đ
 
Bai 1 tong quan ve ctdl&gt
Bai 1   tong quan ve ctdl&gtBai 1   tong quan ve ctdl&gt
Bai 1 tong quan ve ctdl&gt
 
Bai tap xác suất
Bai tap xác suấtBai tap xác suất
Bai tap xác suất
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
 
Giáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mới
Giáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mớiGiáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mới
Giáo án đại số 8 cả năm ( 2 cột ) soạn theo 5 hoạt động trường học mới
 
Clean code - Trở thành một lập trình viên tốt hơn
Clean code - Trở thành một lập trình viên tốt hơnClean code - Trở thành một lập trình viên tốt hơn
Clean code - Trở thành một lập trình viên tốt hơn
 
Dbms Final Examination Answer Key
Dbms Final Examination Answer KeyDbms Final Examination Answer Key
Dbms Final Examination Answer Key
 
14. Defining Classes
14. Defining Classes14. Defining Classes
14. Defining Classes
 
Danh Sach Lien Ket
Danh Sach Lien KetDanh Sach Lien Ket
Danh Sach Lien Ket
 
Data mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụngData mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụng
 
Tieng Anh chuyen nganh CNTT
Tieng Anh chuyen nganh CNTTTieng Anh chuyen nganh CNTT
Tieng Anh chuyen nganh CNTT
 
Cập nhật csdl ngay trên datagridview trong vb
Cập nhật csdl ngay trên datagridview trong vbCập nhật csdl ngay trên datagridview trong vb
Cập nhật csdl ngay trên datagridview trong vb
 
Đề thi Kỹ thuật lập trình có lời giải
Đề thi Kỹ thuật lập trình có lời giảiĐề thi Kỹ thuật lập trình có lời giải
Đề thi Kỹ thuật lập trình có lời giải
 
Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#
 
Uml hà
Uml hàUml hà
Uml hà
 

En vedette

Mixing asp.net mvc & web form into hybrid project
Mixing asp.net mvc & web form into hybrid projectMixing asp.net mvc & web form into hybrid project
Mixing asp.net mvc & web form into hybrid projectMinh Tri Lam
 
MSSQL SERVER 2008 REPLICATION (PEER TO PEER)
MSSQL SERVER 2008 REPLICATION (PEER TO PEER)MSSQL SERVER 2008 REPLICATION (PEER TO PEER)
MSSQL SERVER 2008 REPLICATION (PEER TO PEER)Minh Tri Lam
 
Secure coding guide lines (Web Sercurity)
Secure coding guide lines (Web Sercurity)Secure coding guide lines (Web Sercurity)
Secure coding guide lines (Web Sercurity)Minh Tri Lam
 
Digital library opensource
Digital library opensourceDigital library opensource
Digital library opensourceMinh Tri Lam
 
Hướng dẫn lập trình với SCSF phần I (smart client software factory)
Hướng dẫn lập trình với SCSF phần I (smart client software factory)Hướng dẫn lập trình với SCSF phần I (smart client software factory)
Hướng dẫn lập trình với SCSF phần I (smart client software factory)Minh Tri Lam
 
Joomla CMS framework (1.6 - Old version)
Joomla CMS framework (1.6 - Old version) Joomla CMS framework (1.6 - Old version)
Joomla CMS framework (1.6 - Old version) Minh Tri Lam
 
Digital library standard and technology
Digital library standard and technologyDigital library standard and technology
Digital library standard and technologyMinh Tri Lam
 
Hướng dẫn lập trình với SCSF phần II(smart client software factory)
Hướng dẫn lập trình với SCSF phần II(smart client software factory)Hướng dẫn lập trình với SCSF phần II(smart client software factory)
Hướng dẫn lập trình với SCSF phần II(smart client software factory)Minh Tri Lam
 
SQL SERVER BUSINESS INTELLIGENCE & WINDOWS SERVICE
SQL SERVER BUSINESS INTELLIGENCE  & WINDOWS SERVICESQL SERVER BUSINESS INTELLIGENCE  & WINDOWS SERVICE
SQL SERVER BUSINESS INTELLIGENCE & WINDOWS SERVICEMinh Tri Lam
 
KHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐ
KHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐKHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐ
KHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐMinh Tri Lam
 
Nunit framework for .NET application
Nunit framework for .NET applicationNunit framework for .NET application
Nunit framework for .NET applicationMinh Tri Lam
 
Jenkins (Continuous Integration System with Jenkins)
Jenkins (Continuous Integration System with Jenkins)Jenkins (Continuous Integration System with Jenkins)
Jenkins (Continuous Integration System with Jenkins)Minh Tri Lam
 
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileVai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileMinh Tri Lam
 
SINGLE SIGN ON (SSO) WITH SECURITY ASSERTION MAKUP LANGUAGE (SAML)
SINGLE SIGN ON (SSO)  WITH SECURITY ASSERTION  MAKUP LANGUAGE (SAML)SINGLE SIGN ON (SSO)  WITH SECURITY ASSERTION  MAKUP LANGUAGE (SAML)
SINGLE SIGN ON (SSO) WITH SECURITY ASSERTION MAKUP LANGUAGE (SAML)Minh Tri Lam
 
DBLINK BETWEEN MS SQL SERVER & ORACLE
DBLINK BETWEEN MS SQL SERVER & ORACLEDBLINK BETWEEN MS SQL SERVER & ORACLE
DBLINK BETWEEN MS SQL SERVER & ORACLEMinh Tri Lam
 
Giới thiệu cách sử dụng Bootstrap CSS Framework
Giới thiệu cách sử dụng Bootstrap CSS FrameworkGiới thiệu cách sử dụng Bootstrap CSS Framework
Giới thiệu cách sử dụng Bootstrap CSS Frameworkhocwebgiare
 
BÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPT
BÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPTBÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPT
BÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPTMasterCode.vn
 
İhs telekom halkbank mdm
İhs telekom halkbank mdmİhs telekom halkbank mdm
İhs telekom halkbank mdmMustafa Kuğu
 

En vedette (20)

Mixing asp.net mvc & web form into hybrid project
Mixing asp.net mvc & web form into hybrid projectMixing asp.net mvc & web form into hybrid project
Mixing asp.net mvc & web form into hybrid project
 
MSSQL SERVER 2008 REPLICATION (PEER TO PEER)
MSSQL SERVER 2008 REPLICATION (PEER TO PEER)MSSQL SERVER 2008 REPLICATION (PEER TO PEER)
MSSQL SERVER 2008 REPLICATION (PEER TO PEER)
 
Secure coding guide lines (Web Sercurity)
Secure coding guide lines (Web Sercurity)Secure coding guide lines (Web Sercurity)
Secure coding guide lines (Web Sercurity)
 
Digital library opensource
Digital library opensourceDigital library opensource
Digital library opensource
 
Hướng dẫn lập trình với SCSF phần I (smart client software factory)
Hướng dẫn lập trình với SCSF phần I (smart client software factory)Hướng dẫn lập trình với SCSF phần I (smart client software factory)
Hướng dẫn lập trình với SCSF phần I (smart client software factory)
 
Joomla CMS framework (1.6 - Old version)
Joomla CMS framework (1.6 - Old version) Joomla CMS framework (1.6 - Old version)
Joomla CMS framework (1.6 - Old version)
 
Digital library standard and technology
Digital library standard and technologyDigital library standard and technology
Digital library standard and technology
 
Hướng dẫn lập trình với SCSF phần II(smart client software factory)
Hướng dẫn lập trình với SCSF phần II(smart client software factory)Hướng dẫn lập trình với SCSF phần II(smart client software factory)
Hướng dẫn lập trình với SCSF phần II(smart client software factory)
 
SQL SERVER BUSINESS INTELLIGENCE & WINDOWS SERVICE
SQL SERVER BUSINESS INTELLIGENCE  & WINDOWS SERVICESQL SERVER BUSINESS INTELLIGENCE  & WINDOWS SERVICE
SQL SERVER BUSINESS INTELLIGENCE & WINDOWS SERVICE
 
KHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐ
KHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐKHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐ
KHẢO SÁT NHU CẦU QUẢN LÝ SỬ DỤNG VÀ CHIA SẺ TÀI NGUYÊN SỐ
 
Nunit framework for .NET application
Nunit framework for .NET applicationNunit framework for .NET application
Nunit framework for .NET application
 
Jenkins (Continuous Integration System with Jenkins)
Jenkins (Continuous Integration System with Jenkins)Jenkins (Continuous Integration System with Jenkins)
Jenkins (Continuous Integration System with Jenkins)
 
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm AgileVai trò của Jenkins trong mô hình phát triển phần mềm Agile
Vai trò của Jenkins trong mô hình phát triển phần mềm Agile
 
SINGLE SIGN ON (SSO) WITH SECURITY ASSERTION MAKUP LANGUAGE (SAML)
SINGLE SIGN ON (SSO)  WITH SECURITY ASSERTION  MAKUP LANGUAGE (SAML)SINGLE SIGN ON (SSO)  WITH SECURITY ASSERTION  MAKUP LANGUAGE (SAML)
SINGLE SIGN ON (SSO) WITH SECURITY ASSERTION MAKUP LANGUAGE (SAML)
 
DBLINK BETWEEN MS SQL SERVER & ORACLE
DBLINK BETWEEN MS SQL SERVER & ORACLEDBLINK BETWEEN MS SQL SERVER & ORACLE
DBLINK BETWEEN MS SQL SERVER & ORACLE
 
Giới thiệu cách sử dụng Bootstrap CSS Framework
Giới thiệu cách sử dụng Bootstrap CSS FrameworkGiới thiệu cách sử dụng Bootstrap CSS Framework
Giới thiệu cách sử dụng Bootstrap CSS Framework
 
Apex ace update
Apex ace updateApex ace update
Apex ace update
 
Bootstrap Framework
Bootstrap Framework Bootstrap Framework
Bootstrap Framework
 
BÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPT
BÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPTBÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPT
BÀI 3 Bố cục trang web & bảng (TABLE) trên trang web - Giáo trình FPT
 
İhs telekom halkbank mdm
İhs telekom halkbank mdmİhs telekom halkbank mdm
İhs telekom halkbank mdm
 

Similaire à ADO .NET Entity framework

Bài 2: J2EE - Lập Trình Mạng Nâng Cao
Bài 2: J2EE - Lập Trình Mạng Nâng CaoBài 2: J2EE - Lập Trình Mạng Nâng Cao
Bài 2: J2EE - Lập Trình Mạng Nâng CaoTuan Nguyen
 
Linq to-sql-1221970293242272-9
Linq to-sql-1221970293242272-9Linq to-sql-1221970293242272-9
Linq to-sql-1221970293242272-9m22m
 
Silverlight chapter 1
Silverlight chapter 1Silverlight chapter 1
Silverlight chapter 1hthuyet
 
Hướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hình
Hướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hìnhHướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hình
Hướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hìnhkey Pham
 
429157477-Slide-Bao-Cao.pdf
429157477-Slide-Bao-Cao.pdf429157477-Slide-Bao-Cao.pdf
429157477-Slide-Bao-Cao.pdfToNguyen16
 
Android program 6167
Android program 6167Android program 6167
Android program 6167PhongSPKT
 
CVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-ViCVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-ViLam Nguyen
 
Kiến thức cần thiết làm việc
Kiến thức cần thiết làm việcKiến thức cần thiết làm việc
Kiến thức cần thiết làm việcmanhvokiem
 
Tudonghoale
TudonghoaleTudonghoale
TudonghoaleVu Le
 
Bài 11: JSF-1 - Lập Trình Mạng Nâng Cao
Bài 11:  JSF-1 - Lập Trình Mạng Nâng CaoBài 11:  JSF-1 - Lập Trình Mạng Nâng Cao
Bài 11: JSF-1 - Lập Trình Mạng Nâng CaoTuan Nguyen
 
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPT
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPTBài 1: Làm quen với SQL Server 2008 - Giáo trình FPT
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPTMasterCode.vn
 
Bai 1 lam quen voi sql 2008
Bai 1 lam quen voi sql 2008Bai 1 lam quen voi sql 2008
Bai 1 lam quen voi sql 2008Phương Nhung
 

Similaire à ADO .NET Entity framework (20)

Mo hinh-3-lop
Mo hinh-3-lopMo hinh-3-lop
Mo hinh-3-lop
 
Bài 2: J2EE - Lập Trình Mạng Nâng Cao
Bài 2: J2EE - Lập Trình Mạng Nâng CaoBài 2: J2EE - Lập Trình Mạng Nâng Cao
Bài 2: J2EE - Lập Trình Mạng Nâng Cao
 
Linq to-sql-1221970293242272-9
Linq to-sql-1221970293242272-9Linq to-sql-1221970293242272-9
Linq to-sql-1221970293242272-9
 
Silverlight chapter 1
Silverlight chapter 1Silverlight chapter 1
Silverlight chapter 1
 
Introduction Vs2008 Dot Net35
Introduction Vs2008 Dot Net35Introduction Vs2008 Dot Net35
Introduction Vs2008 Dot Net35
 
04 de cuong
04 de cuong04 de cuong
04 de cuong
 
Hướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hình
Hướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hìnhHướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hình
Hướng dẫn-cài-đặt-để-sữ-dụng-enterprise-architect-để-thiết-kế-các-mô-hình
 
429157477-Slide-Bao-Cao.pdf
429157477-Slide-Bao-Cao.pdf429157477-Slide-Bao-Cao.pdf
429157477-Slide-Bao-Cao.pdf
 
Android program 6167
Android program 6167Android program 6167
Android program 6167
 
Cong nghnet
Cong nghnetCong nghnet
Cong nghnet
 
3250
32503250
3250
 
Asp.net 3.5 _1
Asp.net 3.5 _1Asp.net 3.5 _1
Asp.net 3.5 _1
 
CVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-ViCVNguyenThanhLam-102015-Vi
CVNguyenThanhLam-102015-Vi
 
Sof301 slide1
Sof301   slide1Sof301   slide1
Sof301 slide1
 
Kiến thức cần thiết làm việc
Kiến thức cần thiết làm việcKiến thức cần thiết làm việc
Kiến thức cần thiết làm việc
 
Tudonghoale
TudonghoaleTudonghoale
Tudonghoale
 
Bài 11: JSF-1 - Lập Trình Mạng Nâng Cao
Bài 11:  JSF-1 - Lập Trình Mạng Nâng CaoBài 11:  JSF-1 - Lập Trình Mạng Nâng Cao
Bài 11: JSF-1 - Lập Trình Mạng Nâng Cao
 
Ltgd ch01
Ltgd ch01Ltgd ch01
Ltgd ch01
 
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPT
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPTBài 1: Làm quen với SQL Server 2008 - Giáo trình FPT
Bài 1: Làm quen với SQL Server 2008 - Giáo trình FPT
 
Bai 1 lam quen voi sql 2008
Bai 1 lam quen voi sql 2008Bai 1 lam quen voi sql 2008
Bai 1 lam quen voi sql 2008
 

ADO .NET Entity framework

  • 1. GI I THI U ADO.NETỚ Ệ ENTITY FRAMEWORK minhtri.itp@gmail.com1
  • 3. I. GIỚI THIỆU ENTITY FRAMEWORK Là nền tảng truy cập dữ liệu của Microsoft bao gồm một tập hợp các kỹ thuật được kế thừa và phát triển từ ADO.NET. Giúp lấp đầy khoảng cách giữa lập trình hướng đối tượng và cơ sở dữ liệu. Phiên bản đầu tiên phát hành vào tháng 7 năm 2008 như một phần của Visual Studio 2008 SP1. Entity Framework 4.1 là phiên bản mới nhất được phát hành vào tháng 7 năm 2011. 3
  • 4. II. KIẾN TRÚC  Ki n trúc c a Entity Frameworkế ủ 4
  • 5. II. KIẾN TRÚC (TT)  Ki n trúc c a Entity Frameworkế ủ I. Entity Data Model là s k tự ế h p c a 3 mô hình:ợ ủ 1. Conceptual Schema 2. Mapping Schema 3. Logical Schema Conceptual là mô hình quan ni m d li u mô t các th c thệ ữ ệ ả ự ể (entity/object) và m i quan hố ệ gi a chúng.ữ Mapping th c hi n nhi m vự ệ ệ ụ ánh x gi a mô hình quan ni mạ ữ ệ d li u và mô hình logicữ ệ Logical(Storage) Mô t cácả b ng d li u, view, procerdure vàả ữ ệ m i quan h gi a chúngố ệ ữ 5
  • 6. II. KIẾN TRÚC (TT)  Truy v n d li u nh th nào?ấ ữ ệ ư ế  Đó là câu h i đ c đ t ra c a các nhà phátỏ ượ ặ ủ tri n Entity Framework t khi xây d ng.ể ừ ự  S d ng SQL Query? N u s d ng s không hử ụ ế ử ụ ẽ ỗ tr đ c nhi u h qu n tr c s d li u.ợ ượ ề ệ ả ị ơ ở ữ ệ Ngôn ng truy v n chính đ c ch n làữ ấ ượ ọ LINQ to Entities, bên c nh đó v n h tr m tạ ẫ ỗ ợ ộ ngôn ng truy v n khác t ng t nh SQL đó làữ ấ ươ ự ư Entity SQL, ngoài ra v i EF cho phép chúng ta cóớ th g i tr c ti p m t câu l nh SQL hay m tể ọ ự ế ộ ệ ộ Procerdure t database.ừ 6
  • 7. NH NG Đ C ĐI M N I B T C A ENTITYỮ Ặ Ể Ổ Ậ Ủ FRAMEWORK  H tr cho nhi u h qu n tr c s d li uỗ ợ ề ệ ả ị ơ ở ữ ệ o MSSQL Server, Oracle, MySql, PostgreSQL, SQL Anywhere, DB2,Informix ,U2, Ingres, Progress, Firebird, Synergy, Virtuoso  T o ra mô hình chung gi a database và môạ ữ hình th c th quan h c a ng d ngự ể ệ ủ ứ ụ  Truy v n d li u thông qua Linq to Entitiesấ ữ ệ  H tr ki u d li u ph c h p (Complex Typeỗ ợ ể ữ ệ ứ ợ Support)  H tr nhi u cách đ t o ra mô hình và có thỗ ợ ề ể ạ ể hi u ch nh mô hình m t cách tr c quan (Modelệ ỉ ộ ự Browser Improvements)  Và m t s tính năng khác….ộ ố 7
  • 8. II. NH NG Đ C ĐI M N I B T C AỮ Ặ Ể Ổ Ậ Ủ ENTITY FRAMEWORK  Linh ho t trong vi c mô hình hóa d li u h ngạ ệ ữ ệ ướ đ i t ngố ượ DB Model DB Model DB Model Model First (VS 2010 and .NET 4.0) Code First (Only) (Entity Framework Feature CTP5) Database First (VS 2008 and .NET 3.5 SP1) 8
  • 9. III.NHỮNG KHÓ KHĂN HIỆN NAY  V i mô hình l p trình N- tier ng i l p trình ph iớ ậ ườ ậ ả m t khá nhi u th i gian đ thi t k Data Accessấ ề ờ ể ế ế Layer.  V i mô hình (MVC,MVP) c n khá nhi u th i gian choớ ầ ề ờ c u trúc Model.ấ  Không ki m soát đ c thay đ i gi a Database và codeể ượ ổ ữ ch ng trình(L i không phát hi n đ c).ươ ỗ ệ ượ  Kh năng chuy n đ i HQTCSDL r t khó khăn.ả ể ổ ấ  Ng i l p trình ph i hi u rõ ki n trúc và SQL Queryườ ậ ả ể ế c a t ng h qu n tr c s d li u.ủ ừ ệ ả ị ơ ở ữ ệ  Th i gian và chi phí s n xu t ph n m m tăngờ ả ấ ầ ề  Khó khăn cho vi c b o trì và nâng c p ph n m m.ệ ả ấ ầ ề 9
  • 10. IV.ENTITY FRAMEWORK GIẢI QUYẾT NHỮNG KHÓ KHĂN NHƯ THẾ NÀO?  V i vi c truy v n d li u thông qua Entity Dataớ ệ ấ ữ ệ Model  L p Data Access (N-Tier), Model (MVC,MVP) đã đ cớ ượ Entity Framework h tr ng i l p trình ch t pỗ ợ ườ ậ ỉ ậ trung vào nghi p v khác hàng (buisiness rule) vàệ ụ giao di n ng i dùng.ệ ườ  D dàng chuy n đ i sang h qu n tr c s dễ ể ổ ệ ả ị ơ ở ữ li u khác.ệ  Khi thay đ i c u trúc database ch c n ánh x l iổ ấ ỉ ầ ạ ạ EDM.  Nh ng l i do thay đ i c u trúc database đ cữ ỗ ổ ấ ượ phát hi n ngay lúc biên d ch ch ng trình (Tránhệ ị ươ đ c l i ti m n).ượ ỗ ề ẩ 10
  • 11. IV.ENTITY FRAMEWORK GIẢI QUYẾT NHỮNG KHÓ KHĂN NHƯ THẾ NÀO?  Ng i l p trình ch c n bi t LINQ là có th truyườ ậ ỉ ầ ế ể v n d li u không c n ph i bi t nhi u v c uấ ữ ệ ầ ả ế ề ề ấ trúc SQL query, đ c đi m c a m i h qu n tr cặ ể ủ ỗ ệ ả ị ơ s d li u.ở ữ ệ  V i LINQ chúng ta có th chia các th t c SQLớ ể ủ ụ ph c t p ra thành nhi u hàm, bi n l u tr dứ ạ ề ế ư ữ ữ li u (Entity Object) theo ch c năng. Nh đó quáệ ứ ờ trình Debug, b o trì, nâng c p đ c đ c th cả ấ ượ ượ ự hi n d dàng h n.ệ ễ ơ 11
  • 12. V. KẾT LUẬN  V i nh ng tính năng Entity Framework cung c pớ ữ ấ đ ng th i giúp chúng ta kh c ph c nh ng khóồ ờ ắ ụ ữ khăn hi n t i.ệ ạ S d ng Entityử ụ Framework đ phátể tri n ph n m mể ầ ề 12

Notes de l'éditeur

  1. Nhin tren mo hinh ta de dang nhan thay EF duoc ke thua tu ADO.NET Cung cap them mọt so tinh nang de mo hinh hoa du lieu Thanh nhung thuc the dang doi tuong lien ket voi nhau thong qua cac moi quan he