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

Linux và mã nguồn mở
Linux và mã nguồn mởLinux và mã nguồn mở
Linux và mã nguồn mởNguyễn Anh
 
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTSlide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTHiệu Nguyễn
 
Bài giảng công nghệ phần mềm PTIT
Bài giảng công nghệ phần mềm PTITBài giảng công nghệ phần mềm PTIT
Bài giảng công nghệ phần mềm PTITNguynMinh294
 
Đồ án UML-ASP quản lý phòng khám nha khoa
Đồ án UML-ASP quản lý phòng khám nha khoaĐồ án UML-ASP quản lý phòng khám nha khoa
Đồ án UML-ASP quản lý phòng khám nha khoaTrung Thành Nguyễn
 
Chương 4. Chuẩn hóa cơ sở dữ liệu
Chương 4. Chuẩn hóa cơ sở dữ liệu Chương 4. Chuẩn hóa cơ sở dữ liệu
Chương 4. Chuẩn hóa cơ sở dữ liệu Hoa Le
 
Software testing basic concepts
Software testing basic conceptsSoftware testing basic concepts
Software testing basic conceptsSuresh Mca
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit Thanh Huong
 
Kiem thu phan mem
Kiem thu phan memKiem thu phan mem
Kiem thu phan memTIen Le
 
Developing ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-axDeveloping ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-axNicc Ngo
 
Cơ sở dữ liệu postgres
Cơ sở dữ liệu postgresCơ sở dữ liệu postgres
Cơ sở dữ liệu postgresTechMaster Vietnam
 
Quản lý phòng ban
Quản lý phòng banQuản lý phòng ban
Quản lý phòng banGetfly CRM
 
Luan van hadoop-final
Luan van hadoop-finalLuan van hadoop-final
Luan van hadoop-finalnobjta2015
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMNguyễn Anh
 
Quản lý học sinh cấp 2
Quản lý học sinh cấp 2Quản lý học sinh cấp 2
Quản lý học sinh cấp 2laonap166
 
Slide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online Mới
Slide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online  MớiSlide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online  Mới
Slide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online MớiHiệu Nguyễn
 
MongoDB.pptx
MongoDB.pptxMongoDB.pptx
MongoDB.pptxDuyThnh28
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmNguyễn Anh
 

Tendances (20)

Linux và mã nguồn mở
Linux và mã nguồn mởLinux và mã nguồn mở
Linux và mã nguồn mở
 
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTTSlide Báo Cáo Đồ Án Tốt Nghiệp CNTT
Slide Báo Cáo Đồ Án Tốt Nghiệp CNTT
 
Bài giảng công nghệ phần mềm PTIT
Bài giảng công nghệ phần mềm PTITBài giảng công nghệ phần mềm PTIT
Bài giảng công nghệ phần mềm PTIT
 
Đồ án UML-ASP quản lý phòng khám nha khoa
Đồ án UML-ASP quản lý phòng khám nha khoaĐồ án UML-ASP quản lý phòng khám nha khoa
Đồ án UML-ASP quản lý phòng khám nha khoa
 
Chương 4. Chuẩn hóa cơ sở dữ liệu
Chương 4. Chuẩn hóa cơ sở dữ liệu Chương 4. Chuẩn hóa cơ sở dữ liệu
Chương 4. Chuẩn hóa cơ sở dữ liệu
 
Software testing basic concepts
Software testing basic conceptsSoftware testing basic concepts
Software testing basic concepts
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit
 
Kiem thu phan mem
Kiem thu phan memKiem thu phan mem
Kiem thu phan mem
 
Developing ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-axDeveloping ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-ax
 
Cơ sở dữ liệu postgres
Cơ sở dữ liệu postgresCơ sở dữ liệu postgres
Cơ sở dữ liệu postgres
 
Quản lý phòng ban
Quản lý phòng banQuản lý phòng ban
Quản lý phòng ban
 
Luan van hadoop-final
Luan van hadoop-finalLuan van hadoop-final
Luan van hadoop-final
 
Bài tập thực hành C#
Bài tập thực hành C#Bài tập thực hành C#
Bài tập thực hành C#
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
 
Quản lý học sinh cấp 2
Quản lý học sinh cấp 2Quản lý học sinh cấp 2
Quản lý học sinh cấp 2
 
NoSql Database
NoSql DatabaseNoSql Database
NoSql Database
 
Slide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online Mới
Slide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online  MớiSlide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online  Mới
Slide Đồ Án Tốt Nghiệp Khoa CNTT Web Xem Phim Online Mới
 
Uml hà
Uml hàUml hà
Uml hà
 
MongoDB.pptx
MongoDB.pptxMongoDB.pptx
MongoDB.pptx
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
 

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