1. Gi ng viên: Lê Quý L cả ộ
Blog: http://loclq.wordpress.com
Ngày: 19/09/2008
2. N i Dungộ
• Gi i thi u LINQ To SQLớ ệ
• T o ra các l p mô hình d li u LINQ To SQLạ ớ ữ ệ
• Truy v n c s d li u s d ng các l p LINQ To SQLấ ơ ở ữ ệ ử ụ ớ
• Xác nh n tính h p l c a d li uậ ợ ệ ủ ữ ệ
• S d ng stored procedures (SPROC)ử ụ
• K t n i d li u (Data binding)ế ố ữ ệ
• Xây d ng l p d li u d a trên LINQ To SQLự ớ ữ ệ ự
• K t lu nế ậ
3. • LINQ To SQL cho phép mô hình c s d li u m i quan hơ ở ữ ệ ố ệ
b ng các l pằ ớ
• Sau đó chúng ta có th truy v n d li uể ấ ữ ệ
(update/insert/delete…) thông qua các l p đóớ
• Gi ng nh c s d li u SQL, LINQ To SQL có h trố ư ơ ở ữ ệ ỗ ợ
transactions, views, and stored procedures
• LINQ To SQL cung c p c ch đ cho l p trình viên thêm vàoấ ơ ế ể ậ
các ph ng th c đ xác nh n tính h p l c a d li u (dataươ ứ ể ậ ợ ệ ủ ữ ệ
validation)
• Ngoài ra, LINQ To SQL cung c p c ch đ cho l p trình viênấ ơ ế ể ậ
d dàng thêm vào các thao tác tính toán, truy v n c s dễ ấ ơ ở ữ
li u, đ truy v n d li u phù h p v i nhu c u c a t ng lo iệ ể ấ ữ ệ ợ ớ ầ ủ ừ ạ
h th ng ph n m mệ ố ầ ề
Gi i Thi u LINQ To SQLớ ệ
4. • Click chu t ph i vào projectộ ả ch nọ add new item LINQ
To SQL classes
• Kéo th các b ng c n truy v n vàoả ả ầ ấ object relational
designer
• Thu đ c các l p th c th (entity classes) t ng ng v iượ ớ ự ể ươ ứ ớ
các b ng d li uả ữ ệ
• Đ t tên l i các l p và các thu c tínhặ ạ ớ ộ
• Các m i quan hố ệ
• Delay/Lazy loading
T o Ra L p Mô Hình D Li uạ ớ ữ ệ
LINQ To SQL (4.1)
5. T o Ra L p Mô Hình D Li uạ ớ ữ ệ
LINQ To SQL (4.2)
6. T o Ra L p Mô Hình D Li uạ ớ ữ ệ
LINQ To SQL (4.3)
Kéo th các b ng vào đâyả ả
7. T o Ra L p Mô Hình D Li uạ ớ ữ ệ
LINQ To SQL (4.4)
8. • L y ra các s n ph m t b ng Productsấ ả ẩ ừ ả
Truy V n C S D Li u S D ng Các L pấ ơ ở ữ ệ ử ụ ớ
LINQ To SQL (5.1)
Tên máy tính c a b nủ ạ
9. • Xem các phát bi u SQL b ng LINQ Query Visualizerể ằ
Truy V n C S D Li u S D ng Cácấ ơ ở ữ ệ ử ụ
L p LINQ To SQL (5.2)ớ
10. • Ch n các c t tr vọ ộ ả ề
Truy V n C S D Li u S D ng Cácấ ơ ở ữ ệ ử ụ
L p LINQ To SQL (5.3)ớ
11. • C p nh t c s d li u: thay đ i d li u hàng, thêm 1 hàngậ ậ ơ ở ữ ệ ổ ữ ệ
Truy V n C S D Li u S D ng Cácấ ơ ở ữ ệ ử ụ
L p LINQ To SQL (5.4)ớ
12. • Xóa 1 hàng
Truy V n C S D Li u S D ng Cácấ ơ ở ữ ệ ử ụ
L p LINQ To SQL (5.5)ớ
13. • M t ví d sai, n u không xác nh n d li u h p lộ ụ ế ậ ữ ệ ợ ệ
Xác Nh n Tính H p L C a D Li uậ ợ ệ ủ ữ ệ
(3.1)
• Thêm vào xác nh n d li u h p lậ ữ ệ ợ ệ
14. • Thêm vào xác nh n d li u h p l trong tr ng h p tính h pậ ữ ệ ợ ệ ườ ợ ợ
l c a d li u có liên quan đ n các d li u khácệ ủ ữ ệ ế ữ ệ
Xác Nh n Tính H p L C a D Li uậ ợ ệ ủ ữ ệ
(3.2)
15. • Xác nh n tính h p l c a d li u trong tr ng h pậ ợ ệ ủ ữ ệ ườ ợ
insert/update/delete
Xác Nh n Tính H p L C a D Li uậ ợ ệ ủ ữ ệ
(3.3)
16. • Ánh x SPROC đ n LINQ To SQLạ ế
S D ng Stored Procedures (4.1)ử ụ
Kéo th SPROC vào c a s nàyả ử ổ
17. • G i SPROCọ
S D ng Stored Procedures (4.2)ử ụ
18. • Ánh x ki u tr v c a SPROC đ n l p LINQ To SQLạ ể ả ề ủ ế ớ
S D ng Stored Procedures (4.3)ử ụ
19. • X lý bi n Output c a SPROCử ế ủ
S D ng Stored Procedures (4.4)ử ụ
20. • LINQ To SQL h tr cho vi c k t n i d li u vào các grid,ỗ ợ ệ ế ố ữ ệ
win32 controls, WPF controls
• H c v k t n i d li u trong các bài gi ng v WPFọ ề ế ố ữ ệ ả ề
K t N i D Li uế ố ữ ệ
22. • Th t s d dàng khi dùng LINQ To SQL đ xây d ng l p dậ ự ễ ể ự ớ ữ
li u trong mô hình 3 l pệ ớ
1. T o ra c s d li u, các b ng d li u, các m i quanạ ơ ở ữ ệ ả ữ ệ ố
h gi a các b ng b ng công c tr c quan c a VS 2008ệ ữ ả ằ ụ ự ủ
2. Thêm LINQ To SQL classes vào d án đang phát tri nự ể
3. Kéo th các b ng d li u c n thao tác vàoả ả ữ ệ ầ Object
Relational Designer c a LINQ To SQLủ
4. Thêm các ph ng th c đ xác nh n tính h p l c a dươ ứ ể ậ ợ ệ ủ ữ
li uệ
5. Dùng các ph ng th c nh đã h ng d n trong cácươ ứ ư ướ ẫ
slide tr c đ thao tác trên c s d li uướ ể ơ ở ữ ệ
6. DONE!
Xây D ng L p D Li u D a Trênự ớ ữ ệ ự
LINQ To SQL (2.2)
23. • LINQ To SQL là công c đ c l c h tr cho l p trình viên t oụ ắ ự ỗ ợ ậ ạ
ra l p d li uớ ữ ệ
• LINQ chuy n quan ni m thi t k c s d li u theo mô hìnhể ệ ế ế ơ ở ữ ệ
m i quan h , và vi c truy v n d li u theo c u trúc thànhố ệ ệ ấ ữ ệ ấ
mô hình h ng đ i t ng. T o ra nhi u thu n l i cho l pướ ố ượ ạ ề ậ ợ ậ
trình viên trong thói quen l p trình h ng đ i t ng và s aậ ướ ố ượ ử
l i ch ng trìnhỗ ươ
• LINQ nói chung, không ch giúp chúng ta thao tác trên c sỉ ơ ở
d li u SQL, mà còn thao tác trên nhi u ngu n d li u khác:ữ ệ ề ồ ữ ệ
objects, xml and databases
K t Lu nế ậ