Tài liệu khóa học lập trình ASP.NET - Nguyễn Minh Quý

MỤC LỤC

BÀI SỐ1: MỞ ĐẦU VỀASP.NET. 6

1.1. Giới thiệu tổng quan công nghệ.NET.6

1.1.1 Sựra đời của .NET.6

1.1.2 .NET Framework là gì .7

1.1.3 Một số ưu điểm chính của .NET framework.9

1.2. Giới thiệu ASP.NET.10

1.3. Cài đặt Visual Studio.NET 2008 .10

1.3.1 Các phiên bản .NET.10

1.3.2 Cài đặt Visual Studio.NET 2008.10

1.4. Giới thiệu môi trường tích hợp (IDE) của ASP.NET.11

1.5. Tạo/lưu/mở/chạy ứng dụng ASP.NET.13

1.5.1 Tạo mới .13

1.5.2 Lưu ứng dụng Web.14

1.5.3 Mở(Chạy) ứng dụng .14

1.6. Cơbản vềCSS và DHTML.15

1.6.1 CSS.15

1.6.2 DHTML.15

1.7. Định dạng các thẻsửdụng CSS.16

1.7.1 Định dạng ởmức dòng (Inline) .16

1.7.2 Định dạng bởi bộchọn ID.16

1.7.3 Định dạng bởi bộchọn thẻ(tag).16

1.7.4 Định dạng bởi lớp (Class) .17

1.7.5 Vấn đềtổchức lưu trữ.19

1.8. Truy xuất thuộc tính các thẻHTML và CSS bằng JavaScript.19

1.8.1 Truy xuất các thuộc tính của thẻ.19

1.8.2 Truy xuất các thuộc tính CSS.20

BÀI SỐ2: THỰC HÀNH. 22

BÀI SỐ3: ASP.NET và Web form. 32

3.1 Mô hình lập trình phía máy chủ.32

3.2 Cơchếxửlý file ASP.NET phía máy chủ. .34

3.3 Một sốví dụminh họa.36

3.3.1 Yêu cầu xửlý tại phía server thông qua Runat=”Server” .36

3.3.2 Yêu cầu xửlý bên phía server thông qua cặp thẻ<% %>.37

3.3.3 Yêu cầu xửlý bên server thông qua Script.38

3.3.4 Yêu cầu xửlý bên phía server bằng cách đặt trong Code file .38

3.4 Webform trongASP.NET .39

3.5 Tìm hiểu cấu trúc trang ASP.NET.39

3.6 Code behind và viết code phía Server.42

3.7 HTML Server Controls và Web controls .43

3.7.1 Giới thiệu.43

3.7.2 Cách thức tạo phần tửHTML Server Control và ASP.NET control.43

BÀI 4: THỰC HÀNH . 45

BÀI 5: Tìm hiểu và sửdụng các Server/Ajax Controls. 53

5.1 HTML ServerControls.53

5.2 Web serverControls .53

5.2.1 Khai báo (tạo các phần tửweb server control).53

5.2.2 Cơchếxửlý các phần tửweb server control .54

5.2.2 Thực thi các câu lệnh tại phía server .59

Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý

5.2.3 Mô hình xửlý sựkiện trong ASP.NET .59

5.3 Ajax Control Toolkit.60

5.3.1 Giới thiệu.60

5.3.2 Hướng dẫn sửdụng một sốAjax Control cơbản .61

5.4 Thảo luận công nghệAjax.62

BÀI 6: THỰC HÀNH . 63

BÀI 7: Tạo và sửdụng Custom Control. 67

7.1 Giới thiệu User CustomControl .67

7.2 Các bước tạo User Customcontrol .67

7.3 Thêm các thuộc tính, phương thức và sựkiện vào UCC.69

7.3.1 Thêm thuộc tính vào UCC.69

7.3.2 Thêm phương thức vào UCC .70

7.3.3 Thêm sựkiện vào UC.71

7.4 Truy cập thuộc tính, phương thức của các phần tửcon trong UCC.71

7.5 Minh họa tạo một số điều khiển .73

BÀI 8: THỰC HÀNH . 76

BÀI 9: Các đối tượng trong ASP.NET. 83

9.1 Request Object.83

9.1.1 Đối tượng Request dùng đểlàm gì ? .83

9.1.2 Các thành phần (thuộc tính và phương thức) chính.83

9.1.3 Ví dụsửdụng .83

9.2 Response Object.86

9.1.1 Đối tượng Response dùng đểlàm gì ?.86

9.1.2 Các thành phần (thuộc tính và phương thức) chính.86

9.1.3 Ví dụsửdụng .86

9.3 Server Object .87

9.3.1 Đối tượng Server dùng đểlàm gì ?.87

9.3.2 Các thành phần (thuộc tính và phương thức) chính.87

9.3.3 Ví dụsửdụng .87

9.4 Session Object.87

9.4.1. Biến Sesstion.87

9.4.2. Đối tượng Session.88

9.5 Application Object.88

9.5.1 Đối tượng Application dùng đểlàm gì ? .88

9.5.2. Khái niệm biến toàn ứng dụng .88

9.5.3. Đối tượng Application.88

Một sốbài tập tổng hợp: . 89

BÀI 10: THỰC HÀNH . 94

BÀI 11. Truyền dữliệu giữa các webpage,. 94

MasterPage và gỡrối (Debug) chương trình. 94

11.1 Truyền (Post) dữliệu giữa các trang bằng mã lệnh C#.94

11.2 Truy xuất đến các phần tửbằng phương thức FindControl .94

11.3 Truy xuất đến trang gửi thông qua thuộc tính PreviousPage. .94

11.4 MasterPage.94

11.5 Gỡrối.97

11.5.1 Giới thiệu.97

11.5.2 Chạy ứng dụng ởchế độgỡrối .97

11.5.3 Khái niệm điểm dừng .97

 

11.5.4 Chạy từng dòng lệnh với chế độStep Into (F8) .97

11.5.5 Chạy từng dòng lệnh với chế độStep Over (Shift-F8).97

11.5.6 Chạy từng dòng lệnh với chế độStep Out (Ctrl-Shift-F8) .97

11.2 Sửdụng Custom Error page.97

11.3 Ghi các vết gây lỗi (Trace errors).97

11.4 Sửdụng công cụgỡrối/ Menu Debug.97

11.5 Tracing lỗi ởmức trang/ Mức toàn ứng dụng .97

BÀI 12: THỰC HÀNH . 97

BÀI 13: CÔNG NGHỆADO.NET . 98

13.1 Giới thiệu chung.98

13.2 Kiến trúc của ADO.NET .99

13.3 Các lớp thao tác với CSDL: Connection, Command, . 100

13.3.1 Lớp Connection.100

13.3.2 Lớp Command.102

13.3.3 Lớp DataReader .104

13.3.7 Lớp DataColumn.106

13.3.8 Lớp DataTable.106

13.3.9 Lớp DataRow .107

13.3.10 Lớp DataSet.108

13.3.11 Lớp DataAdapter .108

BÀI 14: THỰC HÀNH . 111

BÀI 15: Tìm hiểu và ứng dụng cơchếData Binding. 118

15.1 Giới thiệu DataBinding. 118

15.2 Data Binding.118

15.2.1 Dạng gắn kết dữliệu đơn (Single DataBinding) .118

15.2.2 Dạng gắn kết dữliệu có sựlặp lại (Repeated Data Binding) .119

15.3 Các điều khiển Data Source (Data source controls). 121

15.3.1 Giới thiệu vềDataSource controls .121

15.3.2 Sửdụng SqlDataSouce đểchọn (Select) dữliệu.122

15.3.3 Sửdụng SqlDataSource đểcập nhật dữliệu .124

15.3.4 Xóa bản ghi trong CSDL bằng SqlDataSource .127

BÀI 16: THỰC HÀNH . 129

BÀI 17: Làm việc với GridView . 133

17.1 Giới thiệu tổng quan. 133

17.2 Tìm hiểu lớp GridView . 133

17.2.1 Các thuộc tính và cột thuộc tính.133

17.2.2 Các style áp dụng cho GridView.134

17.2.3 Các sựkiện .135

17.2.4 Các phương thức .136

17.3 Các tính năng hỗtrợcủa GridView .137

17.3.1 Phântrang.137

17.3.2 Tính năng tự động sắp xếp .139

17.3.3 Các mẫu hiển thị- Template .140

17.4 Tạo các cột tùy biến HyperLink, BoundColunm . 141

17.4.1 Tạo cột BoundField thủcông .141

17.4.2 Tạo một cột hyperlink .141

17.5 Tạo và xửlý các cột Select, Edit, Delete, Update . 144

17.5.1 Thêm cột Select, Edit - Update, Delete .144

17.5.2 Cập nhật dữliệu .145

17.5.3 Xóa dữliệu .146

BÀI 18: THỰC HÀNH . 148

BÀI 19: Sửdụng Templates . 155

19.1 Giới thiệu tổng quan.155

19.2 Các điều khiển hỗtrợTemplates.155

19.2.1 Một số điều khiển hỗtrợTemplate thường dùng .155

19.2.2 Các loại Template.155

19.3 Repeater control, DataList control, GridView control.156

19.3.1 Tạo template với GridView.156

19.3.2 Tạo template với DataList .160

19.3.3 Tạo Template với Repeater (light-weight) .161

20. Đóng gói website.162

BÀI 20: THỰC HÀNH . 163

pdf172 trang | Chuyên mục: ASP.NET | Chia sẻ: dkS00TYs | Lượt xem: 2655 | Lượt tải: 2download
Tóm tắt nội dung Tài liệu khóa học lập trình ASP.NET - Nguyễn Minh Quý, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
161 
……………………………………………………………………………………………………………… 
Kết quả sau khi chạy trang ở trên 
19.3.3 Tạo Template với Repeater (light-weight) 
Repeater cũng là một điều khiển có khả năng hiển thị dữ liệu dưới dạng danh sách. Khi 
được gắn với nguồn dữ liệu, nó sẽ lần lượt thực thi nội dung nằm trong phần Template mỗi 
khi một bản ghi được đọc từ nguồn. 
Tuy điều khiển này không có khả năng phân trang, sắp xếp như GridView như nó là một 
điều khiển chiếm ít tài nguyên của hệ thống (vì vậy được gọi là điều khiển Light-weight), 
do đó chúng ta có thể dùng trong những trường hợp mà ở đó tài nguyên đóng vai trò quan 
trọng. 
Repeater cho phép chúng ta tùy biến các mục tương tự như GridView và DataList, đó là sử 
dụng Template. 
Ví dụ 9: Hiển thị họ tên và ảnh minh họa người dùng trong bảng tblUser sử dụng điều 
khiển Repeater. 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
162 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Repeater.aspx.cs" 
Inherits="Lession_19_Repeater" %> 
 Hiển thị danh sách người dùng 
 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
 ConnectionString="" 
 SelectCommand="SELECT * FROM tblUser"> 
 <asp:Repeater runat="server" ID="rptDSND" 
 DataSourceID="SqlDataSource1"> 
 Họ và tên: 
 <asp:Image runat="server" 
 ImageUrl='' 
 Width="100px" Height="100px" /> 
20. Đóng gói website 
Sau khi hoàn tất dự án thì một khâu quan trọng nữa cần phải thực hiện để đảm bảo vấn đề 
bản quyền đó là biên dịch và xuất bản ứng dụng web. Việc xuất bản (Publish) ứng dụng sẽ 
giúp biên dịch các file code behind (file CS) thành các assemblies (file DLL). Khi đó, ứng 
dụng chạy sẽ nhanh hơn và bảo mật hơn. 
Để xuất bản web, Right click vào Tên của Solution và chọn mục Publish. Sau đó một hộp 
thoại hiện ra cho phép ta chọn thư mục sẽ lưu kết quả. 
Ứng dụng được biên dịch này có thể copy vào Server để thực thi. 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
163 
BÀI 20: THỰC HÀNH 
Mục tiêu: Kết thúc bài học này, học viên có thể 
™ Sử dụng được tính năng Template để trình diễn và cập nhật dữ liệu theo yêu cầu 
™ Sử dụng được DataList để trình diễn dữ liệu dưới dạng cột. 
™ Sử dụng ListView kết hợp với DataPager để hiển thị và duyệt các bản ghi. 
Nội dung: 
Bài 1: Hiển thị danh sách cán bộ (bao gồm họ tên, địa chỉ, điện thoại) trong bảng 
tblCanBo. Trong đó Họ tên chữ đậm. 
Hướng dẫn: 
- Đặt thuộc tính AutoGenerateColumns = "false" 
- Tự tạo các cột cho GridView bằng cặp thẻ … 
- Đặt nội dung cần hiển thị (ở đây là Họ tên, địa chỉ, điện thoại) vào các cột bằng cách 
đặt bên trong cặp thẻ 
Danh sách cán bộ 
Minh họa: 
<%@ Page Language="C#" AutoEventWireup="true" 
CodeFile="ThongTinCanBo.aspx.cs" Inherits="Lession_20_ThongTinCanBo" %> 
 Thông tin về cán bộ 
 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
 ConnectionString="" 
 SelectCommand="SELECT * FROM tblCanBo"> 
 <asp:GridView runat="server" ID="DSCB" 
 DataSourceID="SqlDataSource1" AutoGenerateColumns="false"> 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
164 
Bài 2: Bổ sung thêm trường Photo vào bảng tblCanBo, trường Photo này sẽ lưu đường dẫn 
tới file ảnh của mỗi cán bộ. Sau đó xây dựng trang web hiển thị thông tin cán bộ (bao gồm 
các trường Họ tên, địa chỉ và ảnh tương ứng). 
Hướng dẫn: 
- Vì trường Photo đã chứa đường dẫn đến file ảnh rồi, vì vậy để hiển thị hình ảnh thay vì 
văn bản text thuần túy, ta sẽ tạo thêm phần tử , trong đó thuộc tính 
ImageUrl sẽ được gán giá trị của trường Photo tương ứng. cụ thể là : 
' /> 
- Để đặt kích thước ảnh như nhau, có thể thêm thuộc tính Width và Height 
- Trước giá trị cần có thêm cặp dấu nháy đơn để đảm bảo tính 
đúng đắn khi đường dẫn ảnh chứa dấu cách. 
Yêu cầu về giao diện 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
165 
Minh họa: 
 <asp:GridView runat="server" ID="DSCB" Width="100%" GridLines="Both" 
 DataSourceID="SqlDataSource1" AutoGenerateColumns="false"> 
 <asp:Image runat="server" Width="100px" Height="100px" 
 ImageUrl='' /> 
Bài 3: Hiển thị danh sách cán bộ dạng chi tiết. Thông tin được dàn trang theo chiều dọc (Flow). 
Hướng dẫn: Tạo một cột duy nhất, nhưng mỗi dòng của cột đó sẽ chứa tất cả các trường 
thông tin cần hiển thị. Với mỗi hàng được tạo ra, ta sẽ đặt vào một table có kích thước cố 
định, bảng này có 1 hàng và 2 cột. Cột thứ nhất sẽ chứa thông tin ở dạng text như họ tên, 
địa chỉ, điện thoại và mô tả bản thân. Cột thứ hai sẽ hiển thị hình ảnh tương ứng. 
Kết quả 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
166 
Minh họa: 
 <asp:GridView runat="server" ID="DSCB" Width="100%" GridLines="None" 
 DataSourceID="SqlDataSource1" AutoGenerateColumns="false"> 
 <asp:Image runat="server" 
 Width="100px" 
 Height="100px" 
 ImageUrl='' 
 /> 
Bài 3: Hiển thị danh sách người dùng dưới dạng Flow (tuyến tính) như bài 3, nhưn có thêm 
chức năng cập nhật và Delete. THông tin hiển thị gồm Họ tên, Địa chỉ, Điện thoại. Trong 
đó, trường địa chỉ sẽ hiển thị ở dạng Text Multiline khi sửa. 
Hướng dẫn: 
Tạo các template như bài 3, nhưng thêm 2 command là Edit và Delete. Trong đó các trường 
muốn sửa chữa sẽ đặt vào các Textbox và dùng hàm . 
Minh họa: 
Cột 1 
Cột 2 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
167 
Kết quả. 
<%@ Page Language="C#" AutoEventWireup="true" 
CodeFile="DSCB_ImageField.aspx.cs" Inherits="Lession_20_DSCB_ImageField" %> 
 Cập nhật danh sách cán bộ 
 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
 ConnectionString="" 
 SelectCommand="SELECT * FROM tblCanBo" 
 UpdateCommand="Update tblCanBo SET 
 HoVaTen=@HoVaTen, DiaChi=@DiaChi, SoDienThoai=@SoDienThoai 
 Where MaCanBo=@MaCanBo" 
 DeleteCommand="Delete tblCanBo where MaCanBo=@MaCanBo"> 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
168 
 <asp:GridView runat="server" ID="DSCB" Width="100%" GridLines="both" 
 DataKeyNames="MaCanBo" 
 DataSourceID="SqlDataSource1" AutoGenerateColumns="false"> 
 Địa chỉ: 
 Điện thoại: 
 Họ tên: 
 <asp:TextBox runat="server" ID="txtHVT" Width="98%" 
 Text= '' > 
 Địa chỉ: 
 <asp:TextBox runat="server" ID="txtDC" Width="98%" 
 TextMode="MultiLine" Rows="5" 
 Text=''> 
 Điện thoại: 
 <asp:TextBox runat="server" ID="txtDT" Width="98%" 
 Text= ''> 
 <asp:CommandField 
 HeaderText="Sửa chữa" 
 EditText=" Sửa" 
 UpdateText="Lưu" 
 ButtonType="Link" 
 CancelText=" Hủy bỏ" 
 ShowEditButton="true" /> 
 <asp:CommandField 
 HeaderText="Xóa" 
 DeleteText=" Xóa" 
 ButtonType="Link" 
 ShowDeleteButton="true" /> 
Phần template 
cho chế độ 
thường 
(chưa sửa) 
Phần template 
cho chế độ 
soạn thảo 
(edit mode) 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
169 
Bài 4: Hiển thị thông tin trích ngang về người dùng trong bảng tblUser, trong đó dưới mỗi 
người dùng thêm một Hyperlink là "Xem chi tiết" để khi người dùng click vào hyperlink 
này thì mở trang UserDetail.aspx và hiển thị chi tiết thông tin về người dùng đó. Yêu cầu 
thêm: Danh sách này hiển thị làm 3 cột. 
Hướng dẫn: Để hiển thị thông tin dưới dạng cột, ta sử dụng điều khiển DataList. Trong 
mỗi Hyperlink ta sẽ tạo liên kết đến trang UserDetail.aspx và truyền cho trang này ID 
(trong trường hợp này là TenDangNhap) của người dùng tương ứng. Dựa vào ID này, trang 
UserDetail.aspx sẽ đọc (dùng Request.QueryString["TenNguoiDung"]) sau đó select thông 
tin ứng với ID đó và hiển thị. 
Minh họa: 
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DataListControl.aspx.cs" 
Inherits="Lession_19_RepeaterControl" %> 
 Danh sách cán bộ 
 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
 ConnectionString="" 
 SelectCommand="SELECT * FROM tblUser"> 
 <asp:DataList runat="server" ID="DataList1" 
 DataSourceID="SqlDataSource1" 
 RepeatDirection="Horizontal" 
 RepeatColumns="3" 
 RepeatLayout="Table"> 
 Quyền hạn : 
 <asp:Image Width="100px" Height="100px" 
 runat="server" ImageUrl= '' /> 
 '> 
 Xem chi tiết 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
170 
Kết quả. 
Bài 4: Hiển thị danh sách người dùng dưới dạng cột và thực hiện phân trang. 
Hướng dẫn: 
Để thực hiện tạo các cột, có thể sử dụng điều khiển DataList, ngoài ra ta còn một điều 
khiển khác cũng rất mạnh cho phép hiển thị dưới dạng các cột nhưng có thêm khả năng 
phân trang, đó là: ListView controls. 
Các bước thực hiện: 
B1. Tạo nguồn dữ liệu SqlDataSource như những bài trước. 
B2. Tạo một ListView và gắn với nguồn dữ liệu SqlDataSource (như bài trước) 
B3. Cấu hình cho ListView (chọn smart tag), sau đó click chọn "Config ListView…" 
B4: Chọn các thông số như hình bên dưới. 
B5: Mở trang web. 
Lưu ý: Chúng ta hoàn toàn có thể thay đổi format của ListView bằng các vào Source code 
editor để sửa. 
Một cách phân trang khác là tạo một DataPager và gắn vào ListView, Khi đó ta chỉ cần đặt 
thuộc tính PagedControlID="ListView1". Cách này có ưu điểm là phần trang có thể đặt ở 
bất kỳ vị trí nào trên màn hình. 
Tài liệu khóa học lập trình web với ASP.NET – Biên soạn: Nguyễn Minh Quý 
V1.0 –  aptech@utehy.edu.vn; Tel: 0321-713.319 
171 
Kết quả hiển thị

File đính kèm:

  • pdfTài liệu khóa học lập trình ASP.NET.pdf
Tài liệu liên quan