Tải bản đầy đủ (.pdf) (12 trang)

Bài giảng Công nghệ Web (ASP.NET): Bài 10 - Lê Quang Lợi

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (401.91 KB, 12 trang )

Bài 10: Data Access
Lê Quang Lợi
Email:



Bài 10: Data Access
» DataControls
» Binding
» SqlData Controls
» Template

Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.1 Data Control
» DataControl: Các Servercontrols phục vụ tương tác CSDL

» Tương tác: Kết nối/Đọc/Ghi dữ liệu, hiển thị kết quả
 Kết nối/đọc/ghi: SQLDataSource, LinQDataSrource…

 Đối tượng chung: SqlCommand, DataAdapter, DataTable…
 Hiển thị: Repeater, GridView, DetaileView, FormView …
 Hỗ trợ: QueryExtender, Datapager

» CSDL: SQLserver, Oracle, mySQL, DB2, …
» Hỗ trợ cơ chế Binding : <%# Eval(Thuộc tính)%>


Lê Quang Lợi:

Mơn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.2 Data Binding
» Binding: Cách kết hợp dữ liệu với server controls

»

Cú pháp: <%# Eval (trường dữ liệu)%>

»

Quy trình Binding CSDL
1) Tạo giao diện( Template): thể hiện/trình bày dữ liệu
2) Tạo nguồn dữ liệu: Cấu trúc hợp với giao dện

3) Trỏ dữ liệu cho giao diện: DataSource, DataSourceID
4) Kết hợp dữ liệu với giao diện:Gọi hàm Control.DataBind();

Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY



10.2 Data Binding
» Controls Binding:
 DataCommand: câu lệnh SQLDataSource
 DataSrourecID, DataSrource: nguồn dữ liệu
 DataMember, DatakeyName: Trường dữ liệu cần kết hợp

» Controls Template: thể hiện giao diện khuôn mẫu
» Thuộc tính DataSourceID: Nguồn dữ liệu cần hiển thị

» Thuộc tính Datasource: Nguồn dữ liệu (lập trình)
» Phương thức DataBind(): Kết hợp dữ liệu với Server control

Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.2 Data Binding
» GridView: thể hiện bảng dữ liệu Table (hàng/cột)
» ListView: thể hiện dữ liệu dạng danh sách
» Repeater: thể hiện dữ liệu lặp đi lặp lại dạng Template
» Thuộc tính DataSourceID/ DataSource: Nguồn dữ liệu
» Thuộc tính EnablePaging phân trang trên Control

Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)


CNPM-CNTT-ĐHSPKT HY


10.2 Data Binding (FormView, DetailesView)
» Thể hiện dữ liệu dạng trường dữ liệu
» Thể hiện chi tiết một RecordeSet (1 dòng dữ liệu)
» Cho phép thao tác trên RecordeSet
» Thộc tính: DataValue, DataSourceID, DataKeys, DataMember

Lê Quang Lợi:

Mơn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.3 SqlDataSource
» Server Control:Hỗ trợ thao tác dữ liệu với CSDL
 Tạo kết nối
 Thực thi các kết nối: SQL
 Gửi kết quả về cho Display DataControls

» SQLDataSource: Thao tác CSDL SQLserver
» LinQDataSource: Thao tác dữ liệu dưới dạng LinQ

» XMLDataSource: Thao tác dữ liệu dạng XML
» EntityDataSource: dữ liệu dạng đối tượng

» ObjectDataSource: Dữ liệu là tập đối tượng
Lê Quang Lợi:


Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.3.1 SqlDataSource
» Đối tượng chứa câu lệnh thao tác với CSDL SqlServer

» Đọc/Ghi dữ liệu từ servercontrols đến CSDL
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT ID, Name FROM Students"
UpdateCommand="Update Students SET Name=@Name, WHERE

ID=@ID" >
</asp:SqlDataSource>

»

Thuộc tính: Select/Insert/Delete/UpdateCommand

Lê Quang Lợi:

Mơn học : Cơng nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.3.1 SqlDataSource


ConnectionString="<%$ ConnectionStrings: strconn %>"
<!—lấy dữ liệu -->

SelectCommand="SELECT [UserId], [Email] FROM [User]"
</asp:SqlDataSource>
DataSourceID=" sqlTDS1">
</asp:GridView>

Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.3.2 LinQ DataSource
» Tương tác dữ liệu theo LinQ tương tự SqlDataSource

» Bảng dữ liệu dạng tập hợp/ tập đối tượng
Ví dụ
TableName="Contacts" ID=“lqDTS" runat="server">
</asp:LinqDataSource>

» Thuộc tính ContextTypeName: Nguồn LinQ
» Thuộc tính TableName: Tên đối tượng của nguồn LinQ


Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY


10.4 Data pager
» Cho phép hiển thị phân trang CSDL thành các trang(mảnh)
PageSize="3" OnPreRender="Data_PreRender">
<Fields>
ShowNextPageButton="False" /> <asp:NumericPagerField />
ShowPreviousPageButton="False" />
</Fields>
</asp:DataPager>

Lê Quang Lợi:

Môn học : Công nghệ WEB (ASP.NET)

CNPM-CNTT-ĐHSPKT HY



×