CÔNG NGHỆ WEB NÂNG CAO XÂY DỰNG WEBSITES VỚI ASP.NET 2.0

93 362 0
CÔNG NGHỆ WEB NÂNG CAO XÂY DỰNG WEBSITES VỚI ASP.NET 2.0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC Chƣơng 1. PHÂN TÍCH THIẾT KẾ DATABASE ........................................................... 6 1.1. YÊU CẦU HỆ THỐNG .............................................................................................. 6 1.2. THIẾT KẾ DATABASE ............................................................................................. 6 1.2.1. Diagram ................................................................................................................... 6 1.2.2. Bảng chủ đề: tbChuDe ............................................................................................. 6 1.2.3. Bảng nhà xuất bản: tbNhaXuatBan ......................................................................... 6 1.2.4. Bảng sách: tbSach .................................................................................................... 7 1.2.5. Bảng tác giả: tbTacGia ............................................................................................ 7 1.2.6. Bảng khách hàng: tbKhachHang ............................................................................. 7 1.2.7. Bảng đơn đặt hàng: tbDonHang .............................................................................. 7 1.2.8. Bảng chi tiết đặt hàng: tbCTDonHang .................................................................... 8 1.2.9. Bảng chi tiết đặt hàng: tbNhanVien ........................................................................ 8 1.3. STORE PROCEDURE ............................................................................................... 8 1.3.1. Xây dựng Store Procedure Insert ............................................................................. 8 1.3.2. Xây dựng Store Procedure Update .......................................................................... 9 1.3.3. Xây dựng Store Procedure Delete ......................................................................... 10 1.3.4. Xây dựng Store Procedure GET ............................................................................ 11 1.4. MỘT SỐ ĐỒ ÁN ...................................................................................................... 13 Chƣơng 2. XÂY DỰNG MÔ HÌNH 3 LAYER ............................................................... 14 2.1. TẠO MÔ HÌNH PROJECT ...................................................................................... 14 2.1.1. Tạo Solution .......................................................................................................... 14 2.1.2. Tạo Project Data Object Transfer .......................................................................... 15 2.1.3. Tạo Project Data Access Layer ............................................................................. 16 2.1.4. Tạo Project Busineess ............................................................................................ 17 2.1.5. Tạo Website ........................................................................................................... 17 2.1.6. Tạo File Web.Config cho Web Site ....................................................................... 18 2.1.7. Tạo Reference ........................................................................................................ 19 2.2. XÂY DỰNG ĐỐI TƢỢNG DATA TRANSFER..................................................... 22 2.2.1. Xây dựng class Entities ......................................................................................... 22 2.2.2. Tip: Cách xây dựng nhanh đối tƣợng Data Access Transfer ................................ 25 2.2.3. Xây dựng enum Columns ...................................................................................... 27 2.2.4. Xây dựng lớp Collection ....................................................................................... 28 P a g e | 3 2.3. XÂY DỰNG LỚP DATA ACCESS ......................................................................... 28 2.3.1. Thuộc Tính SqlConnection .................................................................................... 28 2.3.2. Phƣơng thức khởi tạo............................................................................................. 28 2.3.3. Phƣơng thức Insert................................................................................................. 29 2.3.4. Phƣơng thức Update .............................................................................................. 30 2.3.5. Phƣơng thức Delete ............................................................................................... 30 2.3.6. Phƣơng thức Get .................................................................................................... 31 2.4. XÂY DỰNG LỚP BUSINESS ................................................................................. 33 2.4.1. Phƣơng thức Insert................................................................................................. 33 2.4.2. Phƣơng thức Update .............................................................................................. 33 2.4.3. Phƣơng thức Delete ............................................................................................... 34 2.4.4. Phƣơng thức Get .................................................................................................... 34 2.4.5. Phƣơng thức GetAll ............................................................................................... 34 2.4.6. Phƣơng thức GetByID ........................................................................................... 35 Chƣơng 3. XÂY DỰNG PHÂN HỆ QUẢN LÝ ............................................................. 36 3.1. TẠO TRANG MASTER PAGE ............................................................................... 36 3.1.1. Tạo trang Master Page ........................................................................................... 36 3.1.2. Thiết kế giao diện cho trang Master Page ............................................................. 37 3.1.3. Kiểm tra đăng nhập ................................................................................................ 37 3.2. XÂY DỰNG CHỨC NĂNG ĐĂNG NHẬP ............................................................ 38 3.2.1. Thiết kế giao diện cho trang đăng nhập ................................................................. 38 3.2.2. Xử lý đăng nhập .................................................................................................... 39 3.3. XÂY DỰNG CHỨC NĂNG XEM DANH SÁCH SẢN PHẨM ............................. 40 3.3.1. Tạo trang danh sách sản phẩm ............................................................................... 40 3.3.2. Thiết kế giao diện .................................................................................................. 41 3.3.3. Xử lý Page Load .................................................................................................... 44 3.3.4. Xử lý chức năng phân trang ................................................................................... 47 3.3.5. Chức năng xóa ....................................................................................................... 48 3.3.6. Chức năng tìm kiếm .............................................................................................. 48 3.4. XÂY DỰNG CHỨC NĂNG THÊM SẢN PHẨM ................................................... 48 3.4.1. Thiết kế giao diện cho trang thêm sản phẩm ......................................................... 48 3.4.2. Xử lý tải dữ liệu ..................................................................................................... 50 3.4.3. Xử lý thêm sản phẩm ............................................................................................. 51 P a g e | 4 3.5. XÂY DỰNG CHỨC NĂNG CHỈNH SỬA SẢN PHẨM ........................................ 52 3.5.1. Thiết kế giao diện cho trang chỉnh sửa sản phẩm .................................................. 52 3.5.2. Xử lý Page Load .................................................................................................... 55 3.5.3. Xử lý chỉnh sửa sản phẩm ..................................................................................... 56 3.6. XÂY DỰNG CHỨC NĂNG XEM DANH SÁCH ĐƠN HÀNG ............................ 57 3.6.1. Thiết kế giao diện .................................................................................................. 57 3.6.2. Xử lý tải dữ liệu ..................................................................................................... 59 3.6.3. Xử lý phân trang .................................................................................................... 61 3.7. XÂY DỰNG CHỨC NĂNG XEM CHI TIẾT ĐƠN HÀNG ................................... 61 3.7.1. Thiết kế giao diện .................................................................................................. 61 3.7.2. Xử lý tải dữ liệu ..................................................................................................... 65 3.7.3. Xử lý phân trang .................................................................................................... 67 Chƣơng 4. XÂY DỰNG PHÂN HỆ NGƢỜI DÙNG...................................................... 68 4.1.1. TẠO TRANG MASTER PAGE............................................................................ 68 4.1.2. Thiết kế giao diện .................................................................................................. 68 4.1.3. Xử lý tải dữ liệu ..................................................................................................... 72 4.1.4. Xử lý thoát khỏi hệ thống ...................................................................................... 73 4.2. XÂY DỰNG TRANG CHỦ ..................................................................................... 73 4.2.1. Thiết kế giao diện .................................................................................................. 73 4.2.2. Xử lý tải dữ liệu ..................................................................................................... 74 4.3. XÂY DỰNG TRANG DANH SÁCH SẢN PHẨM THEO CHỦ ĐỀ ..................... 75 4.3.1. Thiết kế giao diện .................................................................................................. 75 4.3.2. Xử lý tải dữ liệu ..................................................................................................... 76 4.3.3. Phân trang .............................................................................................................. 77 4.4. XÂY DỰNG TRANG CHI TIẾT SẢN PHẨM........................................................ 78 4.4.1. Thiết kế giao diện .................................................................................................. 78 4.4.2. Xử lý tải dữ liệu ..................................................................................................... 81 4.4.3. Xử lý thêm vào giỏ hàng ....................................................................................... 82 4.5. XÂY DỰNG CHỨC NĂNG ĐĂNG KÝ ................................................................. 82 4.5.1. Thiết kế giao diện .................................................................................................. 82 4.5.2. Xử lý đăng ký ........................................................................................................ 84 4.6. XÂY DỰNG CHỨC NĂNG ĐĂNG NHẬP ............................................................ 85 4.6.1. Thiết kế giao diện .................................................................................................. 85 P a g e | 5 4.6.2. Xử lý đăng nhập .................................................................................................... 86 4.7. XÂY DỰNG CHỨC NĂNG GIỎ HÀNG ................................................................ 86 4.7.1. Xây dựng giỏ hàng ................................................................................................ 86 4.7.2. Thiết kế giao diện .................................................................................................. 88 4.7.3. Xử lý tải dữ liệu ..................................................................................................... 90 4.8. XÂY DỰNG CHỨC NĂNG ĐẶT HÀNG ............................................................... 91 4.8.1. Thiết kế giao diện .................................................................................................. 91 4.8.2. Xử lý chức năng đặt hàng ...................................................................................... 92

ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP.HCM Khoa Công Nghệ Thông Tin      CÔNG NGHỆ WEB NÂNG CAO XÂY DỰNG WEB SITES VỚI ASP.NET 2.0 Hồ Chí Minh, 7/2011 P a g e | 2 MỤC LỤC Chƣơng 1. PHÂN TÍCH THIẾT KẾ DATABASE 6 1.1. YÊU CẦU HỆ THỐNG 6 1.2. THIẾT KẾ DATABASE 6 1.2.1. Diagram 6 1.2.2. Bảng chủ đề: tbChuDe 6 1.2.3. Bảng nhà xuất bản: tbNhaXuatBan 6 1.2.4. Bảng sách: tbSach 7 1.2.5. Bảng tác giả: tbTacGia 7 1.2.6. Bảng khách hàng: tbKhachHang 7 1.2.7. Bảng đơn đặt hàng: tbDonHang 7 1.2.8. Bảng chi tiết đặt hàng: tbCTDonHang 8 1.2.9. Bảng chi tiết đặt hàng: tbNhanVien 8 1.3. STORE PROCEDURE 8 1.3.1. Xây dựng Store Procedure Insert 8 1.3.2. Xây dựng Store Procedure Update 9 1.3.3. Xây dựng Store Procedure Delete 10 1.3.4. Xây dựng Store Procedure GET 11 1.4. MỘT SỐ ĐỒ ÁN 13 Chƣơng 2. XÂY DỰNG MÔ HÌNH 3 LAYER 14 2.1. TẠO MÔ HÌNH PROJECT 14 2.1.1. Tạo Solution 14 2.1.2. Tạo Project Data Object Transfer 15 2.1.3. Tạo Project Data Access Layer 16 2.1.4. Tạo Project Busineess 17 2.1.5. Tạo Website 17 2.1.6. Tạo File Web.Config cho Web Site 18 2.1.7. Tạo Reference 19 2.2. XÂY DỰNG ĐỐI TƢỢNG DATA TRANSFER 22 2.2.1. Xây dựng class Entities 22 2.2.2. Tip: Cách xây dựng nhanh đối tƣợng Data Access Transfer 25 2.2.3. Xây dựng enum Columns 27 2.2.4. Xây dựng lớp Collection 28 P a g e | 3 2.3. XÂY DỰNG LỚP DATA ACCESS 28 2.3.1. Thuộc Tính SqlConnection 28 2.3.2. Phƣơng thức khởi tạo 28 2.3.3. Phƣơng thức Insert 29 2.3.4. Phƣơng thức Update 30 2.3.5. Phƣơng thức Delete 30 2.3.6. Phƣơng thức Get 31 2.4. XÂY DỰNG LỚP BUSINESS 33 2.4.1. Phƣơng thức Insert 33 2.4.2. Phƣơng thức Update 33 2.4.3. Phƣơng thức Delete 34 2.4.4. Phƣơng thức Get 34 2.4.5. Phƣơng thức GetAll 34 2.4.6. Phƣơng thức GetByID 35 Chƣơng 3. XÂY DỰNG PHÂN HỆ QUẢN LÝ 36 3.1. TẠO TRANG MASTER PAGE 36 3.1.1. Tạo trang Master Page 36 3.1.2. Thiết kế giao diện cho trang Master Page 37 3.1.3. Kiểm tra đăng nhập 37 3.2. XÂY DỰNG CHỨC NĂNG ĐĂNG NHẬP 38 3.2.1. Thiết kế giao diện cho trang đăng nhập 38 3.2.2. Xử lý đăng nhập 39 3.3. XÂY DỰNG CHỨC NĂNG XEM DANH SÁCH SẢN PHẨM 40 3.3.1. Tạo trang danh sách sản phẩm 40 3.3.2. Thiết kế giao diện 41 3.3.3. Xử lý Page Load 44 3.3.4. Xử lý chức năng phân trang 47 3.3.5. Chức năng xóa 48 3.3.6. Chức năng tìm kiếm 48 3.4. XÂY DỰNG CHỨC NĂNG THÊM SẢN PHẨM 48 3.4.1. Thiết kế giao diện cho trang thêm sản phẩm 48 3.4.2. Xử lý tải dữ liệu 50 3.4.3. Xử lý thêm sản phẩm 51 P a g e | 4 3.5. XÂY DỰNG CHỨC NĂNG CHỈNH SỬA SẢN PHẨM 52 3.5.1. Thiết kế giao diện cho trang chỉnh sửa sản phẩm 52 3.5.2. Xử lý Page Load 55 3.5.3. Xử lý chỉnh sửa sản phẩm 56 3.6. XÂY DỰNG CHỨC NĂNG XEM DANH SÁCH ĐƠN HÀNG 57 3.6.1. Thiết kế giao diện 57 3.6.2. Xử lý tải dữ liệu 59 3.6.3. Xử lý phân trang 61 3.7. XÂY DỰNG CHỨC NĂNG XEM CHI TIẾT ĐƠN HÀNG 61 3.7.1. Thiết kế giao diện 61 3.7.2. Xử lý tải dữ liệu 65 3.7.3. Xử lý phân trang 67 Chƣơng 4. XÂY DỰNG PHÂN HỆ NGƢỜI DÙNG 68 4.1.1. TẠO TRANG MASTER PAGE 68 4.1.2. Thiết kế giao diện 68 4.1.3. Xử lý tải dữ liệu 72 4.1.4. Xử lý thoát khỏi hệ thống 73 4.2. XÂY DỰNG TRANG CHỦ 73 4.2.1. Thiết kế giao diện 73 4.2.2. Xử lý tải dữ liệu 74 4.3. XÂY DỰNG TRANG DANH SÁCH SẢN PHẨM THEO CHỦ ĐỀ 75 4.3.1. Thiết kế giao diện 75 4.3.2. Xử lý tải dữ liệu 76 4.3.3. Phân trang 77 4.4. XÂY DỰNG TRANG CHI TIẾT SẢN PHẨM 78 4.4.1. Thiết kế giao diện 78 4.4.2. Xử lý tải dữ liệu 81 4.4.3. Xử lý thêm vào giỏ hàng 82 4.5. XÂY DỰNG CHỨC NĂNG ĐĂNG KÝ 82 4.5.1. Thiết kế giao diện 82 4.5.2. Xử lý đăng ký 84 4.6. XÂY DỰNG CHỨC NĂNG ĐĂNG NHẬP 85 4.6.1. Thiết kế giao diện 85 P a g e | 5 4.6.2. Xử lý đăng nhập 86 4.7. XÂY DỰNG CHỨC NĂNG GIỎ HÀNG 86 4.7.1. Xây dựng giỏ hàng 86 4.7.2. Thiết kế giao diện 88 4.7.3. Xử lý tải dữ liệu 90 4.8. XÂY DỰNG CHỨC NĂNG ĐẶT HÀNG 91 4.8.1. Thiết kế giao diện 91 4.8.2. Xử lý chức năng đặt hàng 92 P a g e | 6 Chƣơng 1. PHÂN TÍCH THIẾT KẾ DATABASE 1.1. YÊU CẦU HỆ THỐNG 1.2. THIẾT KẾ DATABASE 1.2.1. Diagram 1.2.2. Bảng chủ đề: tbChuDe Field Name Data Type Constraint MaCD Int (Autonumber) TenChuDe nVarchar(255) Not Null 1.2.3. Bảng nhà xuất bản: tbNhaXuatBan Field Name Data Type Constraint MaNXB Int (Autonumber) TenNXB nVarchar(255) Not Null DiaChi nVarchar(255) DienThoai nVarchar(15) P a g e | 7 1.2.4. Bảng sách: tbSach Field Name Data Type Constraint MaSach Int (Autonumber) TenSach nVarchar(255) Not Null MaCD Int MaTG Int MaNXB Int HinhMinhHoa nVarchar(255) DonGia Int MoTa nText NgayCapNhat DateTime SoLuongBan Int SoLanXem Int 1.2.5. Bảng tác giả: tbTacGia Field Name Data Type Constraint MaTG Int (Autonumber) Ten nVarchar(255) Not Null DiaChi nVarchar(255) DienThoai nVarchar(255) 1.2.6. Bảng khách hàng: tbKhachHang Field Name Data Type Constraint MaKH Int (Autonumber) HoTen nVarchar(255) Not Null Email nVarchar(255) MatKhau nVarchar(255) DiaChi nVarchar(255) DienThoai nVarchar(255) 1.2.7. Bảng đơn đặt hàng: tbDonHang Field Name Data Type Constraint MaDH Int (Autonumber) P a g e | 8 MaKH Int NgayDatHang DateTime TriGia Int DaGiao Bit NgayGiaoHang DateTime DiaChiNhanHang Nvarchar(255) 1.2.8. Bảng chi tiết đặt hàng: tbCTDonHang Field Name Data Type Constraint MaCTDonHang Int (Autonumber) MaDH Int MaSach Int SoLuong Int DonGia Int 1.2.9. Bảng chi tiết đặt hàng: tbNhanVien Field Name Data Type Constraint MaCTDonHang Int (Autonumber) Ma Int TaiKhoan nVarchar(255) MatKhau nVarchar(255) TenNV nVarchar(255) DiaChi nVarchar(255) DienThoai nVarchar(255) 1.3. STORE PROCEDURE 1.3.1. Xây dựng Store Procedure Insert Để thêm dữ liệu vào bảng tbSach chúng ta cần khai báo các tham số @TenSach, @DonGia, @MoTa, @HinhMinhHoa, @MaCD, @MaNXB, @NgayCapNhat, @SoLuongBan, @SoLanXem, @MaTG cho Store Procedure mang tên sp_tbSach_Insert. Chúng ta không cần nhận vào nội dung của trƣờng MaSach vì đã thiết lập thuộc tính tự tăng cho trƣờng MaSach. P a g e | 9 Sau khi nhận đƣợc các tham số, Store Procedure tiến hành câu lệnh INSERT các dữ liệu đã nhận đƣợc vào cơ sở dữ liệu. Sau đây là nội dung của Store Procedure Insert của table tbSach. ALTER PROCEDURE dbo.sp_tbSach_Insert @TenSach NVARCHAR(255), @DonGia INT, @MoTa NTEXT, @HinhMinhHoa NVARCHAR(255), @MaCD INT, @MaNXB INT, @NgayCapNhat DATETIME, @SoLuongBan INT, @SoLanXem INT, @MaTG INT AS INSERT INTO tbSach VALUES( @TenSach, @MaCD, @MaTG, @MaNXB, @HinhMinhHoa, @DonGia, @MoTa, @NgayCapNhat, @SoLuongBan, @SoLanXem ) 1.3.2. Xây dựng Store Procedure Update Ngoài những tham số nhận vào giá trị của trƣờng cần thay đổi @TenSach, @DonGia, @MoTa, @HinhMinhHoa, @MaCD, @MaNXB, @NgayCapNhat, @SoLuongBan, @SoLanXem, @MaTG, chúng ta cần phải truyền vào @MaSach để xác định thay đổi sản phẩm nào trong cơ sở dữ liệu. Store Procedure Update tiến hành cập nhật các thay đổi bằng câu lệnh UPDATE. Sau đây là nội dung của Store Procedure Update. P a g e | 10 CREATE PROCEDURE dbo.sp_tbSach_Update @MaSach INT, @TenSach NVARCHAR(255), @DonGia INT, @MoTa NTEXT, @HinhMinhHoa NVARCHAR(255), @MaCD INT, @MaNXB INT, @NgayCapNhat DATETIME, @SoLuongBan INT, @SoLanXem INT, @MaTG INT AS UPDATE tbSach SET TenSach = @TenSach, DonGia = @DonGia, MoTa = @MoTa, HinhMinhHoa = @HinhMinhHoa, MaCD = @MaCD, MaNXB = @MaNXB, NgayCapNhat = @NgayCapNhat, SoLuongBan = @SoLuongBan, SoLanXem = @SoLanXem, MaTG = @MaTG WHERE @MaSach = @MaSach 1.3.3. Xây dựng Store Procedure Delete Để xóa một sản phẩm từ bảng tbSach, Store Procedure Delete cần khai báo tham số @MaSach để truyền vào khóa chính của sản phẩm cần xóa. Sau khi nhận đƣợc khóa chính của sản phẩm cần xóa thì Store Procedure Delete tiến hành kiểm tra đối tƣợng sách cần xóa đã đƣợc sử dụng ở các bảng có khóa ngoại đến tbSach. Nếu chƣa đƣợc sử dụng thì Store Procedure sẽ tiến hành xóa đối tƣợng cần xóa. Ngƣợc lại Store Procedure sẽ không xóa đối tƣợng đó. Sau đây là nội dung của Store Procedure Delete. ALTER PROCEDURE dbo.sp_tbSach_Delete [...]... cho project này là BUS 2.1.5 Tạo Website Từ cửa số Solution Explorer, nhấp chuột phải vào solution  Add  New Web Site P a g e | 18 Trong khung Add New Web Site, chọn loại Web Site là ASP.NET Web Site, thƣ mục để chứa Web Site và ngôn ngữ là Visual C# Sau đó nhấn nút “OK” 2.1.6 Tạo File Web. Config cho Web Site Từ cửa sổ Solution Explorer, chọn chuột phải vào Project Web Site  Add New Item… Trong khung... của Web Site Lớp Presentation (Web Site) bắt buộc phải thêm reference tới đối tƣợng Business Layer, Data Objects Transfer và Data Access Layer Từ cửa sổ Solution Explorer, nhấp chuột phải vào Web Site  Add Reference P a g e | 22 Trong khung Add Reference, chọn tab Project, chọn project Business Layer, project Data Object Transfer và project Data Access Layer sau đó nhấn vào nút “OK” 2.2 2.2.1 XÂY DỰNG... tbSachColumns 2.2.4 Xây dựng lớp Collection Để biểu diễn cho một danh sách tbSach chúng ta khai báo class tbSachCollection kế thừa của List nhƣ sau: public class tbSachCollection : List{} Khi cần biểu diễn một danh sách, chúng ta sử dụng class tbSachCollection mà không cần phải dùng thông qua List hoặc ArrayList nữa 2.3 2.3.1 XÂY DỰNG LỚP DATA ACCESS Thuộc Tính SqlConnection Để thao tác với Cơ Sở... { return soLanXem; } set { soLanXem = value; } } private int maTG; public int MaTG { get { return maTG; } set { maTG = value; } } P a g e | 25 } 2.2.2 Tip: Cách xây dựng nhanh đối tƣợng Data Access Transfer 2.2.2.1 Cách 1 Khai báo thuộc tính với loại là Private Khuyến cáo nên đặt ký tự đầu tiên là chữ thƣờng private int maSach; Bôi đen từ maSach, nhấn chuột phải  Refactor  Encapsulate Field Trong... Web. Config cho Web Site Từ cửa sổ Solution Explorer, chọn chuột phải vào Project Web Site  Add New Item… Trong khung Add New Item, chọn loại file là Web Configuration File và nhấn vào nút “Add” P a g e | 19 Chúng ta thêm chuỗi kết nối cơ sở dữ liệu vào file Web. config vừa tạo ra

Ngày đăng: 29/04/2015, 00:32

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan