DataBinder
Phân tích và đánh giá biểu thức ràng buộc dữ liệu
Tính toán biểu thức ràng buộc dữ liệu để rút trích dữ liệu đúng trong template
Container.DataItem trả về đối tượng Object
DataBinder.Eval() là hàm tĩnh sử dụng Reflection
Không quan tâm đến kiểu của nguồn dữ liệu (data source)
<%# DataBinder.Eval(Container.DataItem, "Name") %>
<%# DataBinder.Eval(Container.DataItem, "Age","{0:2d}") %>
28 trang |
Chia sẻ: trungkhoi17 | Lượt xem: 431 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Lập trình Web - Chương 7: Kết gán dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG VII:KẾT GÁN DỮ LIỆULý thuyết : 3 tiếtThực hành 12 tiếtData ControlsDataGrid=Table(động được tạo trên server)RepeaterDataListGridViewCác properties của Data ControlsPropertiesDataListDataGridColumn Layout(sắp xếp theo cột)X Paging(Hiển thị số trang) XSelect/Edit/DeleteXXSort XStyle Properties(Kiểu cách)XXTable Layout(Hiển thị kiểu Bảng) XTemplate(Sử dụng khuôn mẫu)XXDataGridÝ nghĩa: Cung cấp một dạng bảng tính dữ liệu từ data sourceGồm tập các cột, một header, một footer.Các cột có thể tự động tạo hoặc tường minhThuộc tính:03CDTH632.03CDTH892Student IDDataField.DataFieldHeadTextPropertiesDescriptionsAutoGenerateColumnsTạo column tự động()Column(Design & Coding) Bound ColumnCột dữ liệuButton ColumnCột dạng ButtonHyperLink ColumnCột dạng Liên KếtTemplate ColumnCột tự thiết kếEditItemStyleĐịnh dạng cho ItemHeader Style(Show Footer: true)Định dạng HeaderFooter Style(Show Header: true)Định dạng FooterGridLinesHiển thị dạng lướiVí dụ:Tạo điều khiển (Design) Ràng buộc vào DataReader/Dataset: (Coding)dgAuthors.DataSource = dr;dgAuthors.DataBind(); dgAuthors.DataSource = ds.Table[0];dgAuthors.DataBind(); Data Grid – Ví dụ DataGrid EditingSử dụng EditCommandColumn Thuộc tính EditItemIndex (-1 ->không có dòng nào được hiệu chỉnh)EditCommandColumn hiển thị 3 liên kết tương ứng 3 sự kiện: EditCommand, UpdateCommand, CancelCommandDataGrid EditingDataGridCommandEventArgs chứa thông tin của dòng sẽ được hiệu chỉnhThuộc tính DataKeyField thiết lập khóa chínhSự kiện UpdateCommand, truy xuất tập các DataKeys để thao tác trên khóa chínhDataGrid các sự kiệnOnEditCommand=“FunctionEdit"OnCancelCommand=“FunctionCancel“OnPageIndexChanged=“FunctionPage" OnDeleteCommand=“FunctionDelete"OnItemCommand=“FunctionCommand"Hiệu chỉnh dữ liệu - DataGridHiệu chỉnh DataGrid – Mã lệnhprotected override void OnLoad(EventArgs e) { if (!IsPostBack) BindGrid(); base.OnLoad(e); }public void gd1_Edit(object src, DataGridCommandEventArgs e) { gd1.EditItemIndex = (int)e.Item.ItemIndex; BindGrid(); }public void gd1_Cancel(object src, DataGridCommandEventArgs e) { gd1.EditItemIndex = -1; BindGrid(); }Hiệu chỉnh DataGrid – Mã lệnh (tt)public void BindGrid() { // kết nối; OleDbDataAdapter da = new OleDbDataAdapter("select * from Employees", dsn); DataSet ds = new DataSet(); da.Fill(ds, "Employees"); gd1.DataSource=ds; gd1.DataBind();}Đặc điểm khác của DataGridTùy biến giao diện DataGrid ButtonColumn: hiển thị nút nhấn nhằm thực thi một lệnh nào đó.Thuộc tính AllowSorting: hiển thị tiêu đề cột như một siêu liên kết. Thuộc tính SortField : chỉ ra field được sắp xếp.Thực hành: Sử dụng DataGridTạo một OleDbConnectionTạo một OleDbCommandTạo a DataReaderKéo một DataGrid vào Web FormRàng buộc DataSource của DataGrid vào DataGridRepeaterÝ nghĩa: Ràng buộc dữ liệu từ danh sách các item. Hiển thị dữ liệu dựa trên các phần tử HTMLTemplates:DataBinderPhân tích và đánh giá biểu thức ràng buộc dữ liệuTính toán biểu thức ràng buộc dữ liệu để rút trích dữ liệu đúng trong templateContainer.DataItem trả về đối tượng Object DataBinder.Eval() là hàm tĩnh sử dụng ReflectionKhông quan tâm đến kiểu của nguồn dữ liệu (data source)DataBinder – Ví dụ A Repeater control in useDataListSử dụng DataList hiển thị dữ liệu từ data sourceSử dụng khi hiển thị dữ liệu dạng danh sách (tương tự dạng Table)Đơn giản hơn DataGridÍt nhất có ItemTemplateMỗi template có kiểu dáng riêng (HeaderStyle và ItemStyle)DataList – Ví dụRàng buộc dữ liệu từ Data ReaderThiết lập thuộc tínhGọi phương thức DataBindId.DataSource = dr;dgEmp.DataBind();Thuộc tínhMô tảDataSourceNguồn dữ liệuDataTextFieldField trong DataTable được hiển thịDataValueFieldField trong DataTable trở thành giá trị của itemMinh họa: Điều khiển DataGridSử dụng AutoFormatThiết lập Tiêu đề cột Phân trangSắp xếpOleDb Server 2000DataSetDataTableDataTableThiết bị lưu trữOleDb DatabaseOleDbDataAdapterOleDbConnectionDataTableBộ nhớOleDbDataAdapterOleDbConnectionDataset là gì?Truy cập dữ liệu với ADO.NETDatabaseTrả DataSet cho ClientClient thao tác dữ liệuTạo đối tượng kết nối OleDbConnection và OleDbDataAdapter Điền dữ liệu vào DataSet từ DataAdapter, đóng kết nốiOleDbDataAdapterOleDbConnectionList-Bound ControlYêu cầu từ Client12345Cập nhật DataSetSử dụng OleDbDataAdapter để mở OleDbConnection, cập nhật cơ sở dữ liệu và đóng kết nối67ClientWeb serverDataSetReviewIntroduction to Using ADO.NETConnecting to a DatabaseAccessing Data with DataSetsUsing Multiple TablesAccessing Data with DataReadersBài: Tạo kết nối đến Cơ sở dữ liệuSử dụng Server Explorer tạo ConnectionMô hình đối tượng DataAdapter Minh họa: Kết nối đến CSDLTạo một DataSetMinh họa: tạo DataSetBài: Tạo kết nối đến Cơ sở dữ liệuTự nghiên cứu.Yêu cầu: Trình bày các bước để tạo kết nối, lấy dữ liệu – sử dụng MS Visual.Net
Các file đính kèm theo tài liệu này:
- bai_giang_lap_trinh_web_chuong_7_ket_gan_du_lieu.ppt