Upload
hoc-lap-trinh-web
View
485
Download
4
Embed Size (px)
Citation preview
11
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
22
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Sử dụng Visual Studio 2005 Wizards để thực hiện các hoạt động theo cơ chế ngắt kết nối
1. Tổng quan về Typed Dataset
2. So sánh DataSet không định kiểu với DataSet có định kiểu
3. Table Adapter là gì ?
33
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
1. Tổng quan về Typed Dataset
•Khái niệm
•Giới thiệu các công cụ tạo ra Typed Dataset
44
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Khái niệm
•Type Dataset còn gọi là Strong Typed Dataset
•Nó là một lớp kế thừa từ System.Data.DataSet và nó có thể chứa các kiểu dữ liệu, các thuộc tính và các phương thức lồng vào nhau
•Typed Dataset và các thành viên của nó gọi chung là Strong-typed object (DataTable, DataColumn, …)
55
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Khái niệm
•Giúp cho người dùng truy cập dữ liệu theo cách an toàn kiểu (type-safe way)
•Schema của Typed Dataset được biểu diễn dưới dạng tập tin XML Schema có phần mở rộng là .xsd
66
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Giới thiệu các công cụ tạo ra Typed Dataset
•Dataset Designer
•Data Source Configuration Wizard
77
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Giới thiệu các công cụ tạo ra Typed Dataset
•Dataset Designer
Nhấn chuột phải vào Project, chọn Add New Item…
Chọn biểu tượng trong khung Templates Add
Đã tạo xong một Typed Dataset
Tiếp tục tạo các thành viên bên trong:
sử dụng công cụ Dataset
88
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Giới thiệu các công cụ tạo ra Typed Dataset
•Data Source Configuration Wizard
Trên thực đơn, chọn Data Add New Data Source…
Chọn loại Data Source: chọn
Chọn Data Connection: tạo mới hoặc đã có rồi
Chọn Database Objects và đặt tên Dataset
Chọn DataShow Data Source để xem kết quả vừa tạo
99
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Giới thiệu các công cụ tạo ra Typed Dataset
•Data Source Configuration Wizard
Click vào icon Edit DataSet with Designer để mở cửa sổ thiết kế Dataset
1010
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
1. So sánh DataSet không định kiểu với DataSet có định kiểu
•So sánh Untyped và Typed Dataset
•Truy cập Data Table trong Typed Dataset
•Truy cập dữ liệu trong Typed Data Table
•Quản lý Rows và Columns trong Typed Data Table
1111
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
So sánh Untyped và Typed Dataset
1212
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
So sánh Untyped và Typed Dataset
•Ví dụ
1313
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa Untyped và Typed Datset Minh họa Untyped và Typed Datset
•Tạo một Dataset có tên là EmployeeDS
•Khai báo Dataset
•Truy xuất Table
•Truy xuất cột
•Xem lỗi phát sinh
1414
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Truy cập Data Table trong Typed Dataset
•Lớp Typed Dataset chứa các lớp Typed DataTable tương ứng với các table có trong Typed Dataset
•Các lớp Typed DataTable kế thừa từ lớp System.Data.DataTable
1515
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Truy cập Data Table trong Typed Dataset
•Thao tác truy cập
Giả sử ta có Dataset tên là AdventureWorksDataSet
Có 2 Table CountryRegion và CountryRegionCurrency trong DataSet này
1616
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Truy cập Data Table trong Typed Dataset
•Thao tác truy cập
AdventureWorksDataSet ds = new AdventureWorksDataSet();
AdventureWorksDataSet.CountryRegionDataTable dt = ds.CountryRegion;
AdventureWorksDataSet.CountryRegionDataTable dt2 = ds.CountryRegionCurrency;
1717
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa truy cập DataTable trong Minh họa truy cập DataTable trong Typed Datset Typed Datset
•Khai báo TableAdapter
•Khai báo Dataset
•Khai báo DataTable
•Lắp dữ liệu vào DataTable
1818
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Truy cập dữ liệu trong Typed Data Table
•Lớp Typed Dataset chứa các lớp Typed DataRow tương ứng với các table có trong Typed Dataset
•Các lớp Typed DataRow kế thừa từ lớp System.Data.DataRow
•Truy xuất trực tiếp tên cột trên đối tượng DataRow
1919
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Truy cập dữ liệu trong Typed Data Table
•Thao tác
//truy xuất dòng đầu tiên
AdventureWorksDataSet.CountryRegionRow dr = dt[0]
//truy xuất cột CountryRegionCode và Name
Console.WriteLine(“Ma vung: {0}, Ten: {1}", dr.CountryRegionCode.ToString(), dr.Name);
//Hoặc sử dụng Dataset để truy xuất cột trực tiếp
ds.CountryRegion[<chỉ số dòng>].CountryRegionCode
2020
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa truy cập dữ liệu trong Minh họa truy cập dữ liệu trong Typed DataTableTyped DataTable
•Truy xuất dòng
•Truy xuất cột
2121
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Quản lý Rows và Columns trong Typed Data Table
•Typed DataTable cung cấp một số phương thức để truy cập các dòng
•Các phương thức này làm việc với lớp DataRow
2222
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Quản lý Rows và Columns trong Typed Data Table
2323
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa phương thức của Minh họa phương thức của DataTableDataTable
•Tìm dòng có giá trị khóa chính là “AF” (CountryRegionCode)
2424
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
2. Table Adapter là gì ?
•Khái niệm
•Các phương thức chuẩn trong Table Adapter Class
•Tạo thêm các truy vấn cho Table Adapter
2525
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Khái niệm
•Table Adapter là một lớp được phát sinh từ công cụ Wizard khi ta thêm một DataTable vào Dataset
•Lớp này cung cấp một số phương thức hỗ trợ người dùng thao tác dữ liệu (xóa, lưu, …)
2626
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Các phương thức chuẩn trong Table Adapter Class
2727
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa phương thức của Minh họa phương thức của TableAdapter TableAdapter
•Xóa dòng được tìm thấy từ minh hoạ trước
•Thêm một dòng mới
2828
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Tạo thêm các truy vấn cho Table Adapter
•Tạo thêm các phương thức khác theo yêu cầu cụ thể:
Trả về tập hợp các dòng bằng cách tạo ra phương thức Fillxxx và GetDataxxx
Trả về một giá trị tính toán như số tổng, số trung bình, …
Thêm, xóa, sửa trực tiếp một dòng trong CSDL
2929
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa tạo thêm các custom Minh họa tạo thêm các custom queryquery
•Tạo thêm truy vấn có điều kiện cụ thể
•Tạo thêm truy vấn có tham số
3030
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Bài thực hành
•Tạo một Typed Dataset từ CSDL AdventureWorks
•Bổ sung table Department vào Dataset
•Sử dụng các phương thức của TableAdapter để cập nhật dữ liệu trực tiếp