(NB) Giáo trình “Lập trình web ASP.NET” được biên soạn dành cho học sinh trung cấp và sinh viên cao đẳng nghề Lập trình máy tính với mục tiêu cung cấp cho người học các kiến thức và kỹ năng cần thiết để có thể hoàn thành ứng dụng web quảng cáo sản phẩm, thương mại điện tử,...
ỦY BAN NHÂN DÂN TỈNH BR – VT TRƯỜNG CAO ĐẲNG NGHỀ GIÁO TRÌNH MƠ ĐUN LẬP TRÌNH WEB ASP.NET NGHỀ LẬP TRÌNH MÁY TÍNH TRÌNH ĐỘ TRUNG CẤP VÀ CAO ĐẲNG Ban hành kèm theo Quyết định số: 01/QĐCĐN, ngày 04 tháng 01 năm 2016 của Hiệu trưởng trường Cao đẳng nghề tỉnh Bà Rịa – Vũng Tàu Bà Rịa – Vũng Tàu, năm 2016 TUN BỐ BẢN QUYỀN Tài liệu này thuộc loại sách giáo trình nên các nguồn thơng tin có thể được phép dùng ngun bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cấm LỜI GIỚI THIỆU Giáo trình “Lập trình web ASP.NET” được biên soạn dành cho học sinh trung cấp và sinh viên cao đẳng nghề Lập trình máy tính với mục tiêu cung cấp cho người học các kiến thức và kỹ năng cần thiết để có thể hồn thành ứng dụng web quảng cáo sản phẩm, thương mại điện tử, … Tác giả đã nghiên cứu một số tài liệu, cơng nghệ hiện đại kết hợp với kinh nghiệm làm việc thực tế để viết nên giáo trình này. Nội dung được tác giả trình bày cơ động, dễ hiểu kèm theo các bước hướng dẫn thực hành chi tiết giúp cho người học dễ tiếp thu các kiến thức cần thiết và hình thành được kỹ năng nghề Trong q trình biên soạn, chắc chắn giáo trình cịn nhiều thiếu sót. Tác giả rất mong nhận được ý kiến đóng góp của q thầy/cơ và các em học sinh, sinh viên để tiếp tục hồn thiện hơn Xin chân thành cảm ơn q đồng nghiệp, bạn bè đã có những ý kiến đóng góp trong q trình xây dựng giáo trình này Bà Rịa – Vũng Tàu, ngày …… tháng …… năm 2015 Tham gia biên soạn Phan Hữu Phước – Chủ biên MỤC LỤC MƠ ĐUN LẬP TRÌNH WEB ASP.NET Vị trí, tính chất, ý nghĩa và vai trị của mơ đun: Được giảng dạy sau khi học xong Thiết kế web, Lập trình Windows EF và WCF, SQL Server Cung cấp cho người học kiến thức và kỹ năng để xây dựng hồn chỉnh một website thương mại điện tử, quảng bá cho các tổ chức, cá nhân trên nền .NET Framework Mục tiêu của mơ đun: Biết những kiến thức về Web Client, Web Server, ASP.Net trên mơi trường Visual Studio Rèn luyện và phát triển kỹ năng tổ chức và xây dựng ứng dụng Web với ASP.Net 5.0 sử dụng ngôn ngữ C# theo kiến trúc đa tầng (ntier), hướng dịch vụ (SOA) Ren luyên va nâng cao ky năng lâp trinh theo công nghê Entity Framework ̀ ̣ ̀ ̃ ̣ ̀ ̣ (EF), Windows Communication Foundation (WCF) Xây dựng cơ sở vững chắc, tạo tiền đề cho việc tìm hiểu các kiến thức lập trình Web nâng cao và phát triển nghề nghiệp Thực hiện các bài thực hành đảm bảo đúng trình tự. An tồn cho người, mạng và thiết bị Nội dung của mơ đun: T T 10 11 Tên các bài trong mô đun Tổng quan về lập trình web Tạo ứng dụng ASP.NET Tổ chức cấu trúc cho website Xây dựng bố cục chung cho website Tổng quan về ASP.NET Server Control Sử dụng HTML Server Control Sử dụng Web Server Control Sử dụng ViewState Tạo User Control Tải động User Control Kiểm tra dữ liệu hợp lệ Thời Hình thức gian giảng dạy Lý thuyết Tích hợp Tích hợp Tích hợp Tích hợp Tích hợp 15 Tích hợp Tích hợp Tích hợp 11 Tích hợp 14 Tích hợp 12 13 14 15 16 17 18 19 20 Tổng quan về liên kết dữ liệu với control Liên kết dữ liệu với các list control Liên kết dữ liệu với EntityDataSource control Hiển thị và cập nhật dữ liệu trên GridView Hiển thị dữ liệu trên Repeater Hiển thị và cập nhật dữ liệu trên ListView Hiển thị và cập nhật dữ liệu trên DetailsView Quản lý ứng dụng web Hoàn chỉnh ứng dụng với với jQuery plugin Cộng 7 150 Tích hợp Tích hợp Tích hợp Tích hợp Tích hợp Tích hợp Tích hợp Tích hợp Tích hợp BÀI 1 TỔNG QUAN VỀ LẬP TRÌNH WEB Giới thiệu: Bài này cung cấp cho HSSV những kiến thức tổng qt liên quan đến một trang web trên Internet, ứng dụng web ASP.NET và mơi trường phát triển Mục tiêu: Trình bày khái niệm về HTTP, URL, HTML Phân biệt được web tĩnh và web động Trình bày q trình xử lý u cầu của ứng dụng web ASP.NET Nội dung: Tìm hiểu một số khái niệm 1.1 Giới thiệu về Internet Là một mạng máy tính tồn cầu. Các máy tính trong mạng trao đổi thơng tin với thông qua giao thức TCP/IP (Transmission Control Protocol/Internet Protocol) Mang lại nhiểu tiện ích cho người sử dụng, nổi bật nhất là dịch vụ thư điện tử (email), trị chuyện trực tuyến (chat) và truy tìm dữ liệu (search engine), … Dịch vụ được dùng phổ biến nhất trên Internet là World Wide Web (WWW, thường được gọi tắt là Web) thơng qua giao thức HTTP (Hyper Text Transfer Protocol) 1.2 Phân biệt Web Server, Web Client Web Server Máy tính lưu trữ các website Web Client Máy tính dùng để truy cập các trang web Xử lý và trả kết quả cho Web Gửi yêu cầu nhận kết từ Client khi nhận yêu cầu Web Server 1.3 Giới thiệu về một số trình duyệt web Trình duyệt Web (Web Browser) là phần mềm dùng để xem các tài liệu hoặc tìm kiếm tài ngun trên World Wide Web Một số trinh duyệt Web thơng dụng hiện nay: Internet Explorer (IE) được cài đặt sẵn khi cài đặt hệ điều hành Microsoft Windows 2.Cốc Cốc 3.Mozilla FireFox của tập đoàn Mozilla 4.Chrome của Google 5.Safari của hãng Apple 1.4 Phân biệt HTTP, URL, HTML HTTP (Hyper Text Transfer Protocol) Là giao thức truyền tải siêu văn bản Tập hợp các quy định dùng để trao đổi các tài liệu (văn bản, hình ảnh, âm thanh, video, các tập tin đa truyền thơng, …) giữa Web Server và Web Browser URL (Uniform Resource Locator) Đường dẫn đến một trang web (hoặc một tập tin) cụ thể trên Internet Cú pháp đầy đủ: scheme://[:port][][?] Trong đó: scheme: loại dịch vụ Internet (http, https, ftp) host: địa chỉ máy chủ chứa tài ngun port: cổng dịch vụ giao tiếp path: đường dẫn và tên tập tin tài ngun trên máy chủ querystring: các tham số được gửi kèm theo (khi sử dụng http, https) Ví dụ: http://brtvc.edu.vn http://brtvc.edu.vn/thoikhoabieu/20152016hk1.pdf http://brtvc.edu.vn/danhsachlop?lop=cd14lt http://t3h.vn/Pages/View.aspx?id=2 HTML (Hyper Text Markup Language) 6.Ngơn ngữ dùng để xây dựng các trang web Gồm các tag giúp Web Browser biết cách định dạng thơng tin hiển thị Ví dụ: nội dung trang web chao.html ASP.NET Chào mừng bạn đến với Lập trình Web Form ASP.NET Tổng quan về lập trình web 2.1 Web tĩnh Trang web được trình bày dưới dạng văn bản. Nội dung được tạo ra trong lúc thiết kế và khơng thay đổi theo thời gian Được viết, thiết kế bằng ngơn ngữ HTML, khơng kết nối đến cơ sở dữ liệu (CSDL) Dùng ngơn ngữ Client Side Script (Javascript) khi có nhu cầu xử lý tương tác trên trang web Lập trình Client Side bằng Javscript Quá trình xử lý trang web chỉ xảy ra tại Web Browser trên Web Client Liên kết dữ liệu, định dạng dữ liệu, phân trang, thiết kế các cột tùy biến Tương tự GridView Cập nhật dữ liệu Thiết kế: sử dụng bột nút CommandField giống như GridView Xử lý: tương tự GridView, chỉ khác nhau về tên sự kiện và một số thuộc tính Bảng 18.1. Các sự kiện của ListView Tạo MasterDetail Hình 18.2. Kết hợp GridView và DetailsView Bước 1: tạo EntityDataSource1 dùng làm nguồn dữ liệu cho GridView Bước 2: tạo GridView dùng làm Master liên kết với nguồn EntityDataSource1, nên tạo thêm nút lệnh xử lý chọn dịng dữ liệu Bước 3: Tạo EntityDataSource2 dùng làm nguồn dữ liệu cho DetailsView, khai báo thuộc tính Where Bước 4: tạo DetailsView dùng làm Detail và kết nguồn vào Hình 18.3. Khai báo thuộc tính Where cho EntityDataSource2 CÂU HỎI, BÀI TẬP 18.1. Trong website ThuongMaiDienTu, tạo webform cho phép xem danh sách sản phẩm chi tết sản phẩm MasterDetail cách kết hợp GridView và DetailsView 18.2. Trong thư mục administrator, tạo webform cho phép xem đơn hàng trên MasterDetail bằng cách kết hợp GridView và DetailsView YÊU CẦU KIỂM TRA, ĐÁNH GIÁ KẾT QUẢ HỌC TẬP Hiển thị dữ liệu, phân trang trên DetailsView Kết hợp GridView và DetailsView để tạo trang có dạng MasterDetail BÀI 19 QUẢN LÝ ỨNG DỤNG WEB Giới thiệu: Ở những bài trước, chúng ta đã tạo được các trang hiển thị và cập nhật liệu. Làm thế nào để giới hạn, chỉ những người có tài khoản đăng nhập hợp lệ mới được quyền cập nhật dữ liệu? Làm sao chúng ta có thể lưu được thơng tin đăng nhập, thống kê truy cập, Mục tiêu: Biết cơng dụng của các tập tin cấu hình ứng dụng Biết cơng dụng của các đối tượng quản lý ứng dụng Biết sử dụng kết hợp các tập tin cấu hình và các đối tượng quản lý có hiệu quả trong ứng dụng web Tạo được chức năng thống kê truy cập và quản lý giỏ hàng Cẩn thận, an tồn Nội dung: Tập tin Global.asax Giới thiệu Tập tin tùy chọn chứa code để quản lý các sự kiện cấp Application và Session Được đặt trong thư mục gốc của ứng dụng web ASP.NET Một ứng dụng web chỉ có một tập tin Global.asax Tạo Global.asax Click chuột phải lên website, chọn Add Add New Item … Các sự kiện bên trong Global.asax Tâp tin Web.config Khai báo các thơng số mặc định cho website, có dạng XML Chứa các thơng tin cấu hình riêng của website Trong mỗi website và các thư mục con có thể có tập tin Web.config riêng Cấu trúc ban đầu sau khi tạo mới website Đặt thơng tin tùy chọn riêng cho website Truy xuất thơng tin Sử dụng NameSpace: System.Configuration Đối tượng Request Nhận giá trị từ client gửi về cho web server Thuộc tính QueryString cho phép nhận các giá trị truyền theo chuỗi tham số = Request.QueryString[“Tên tham số”] Đối tượng Response Giao tiếp với client (gửi kết quả đến client) Quản lý và điều phối thơng tin từ server đến trình duyệt của người dùng Phương thức Write: in một chuỗi ra trang web, khơng thể quy định vị trí hiển thị Redirect: gửi thơng điệp u cầu trình duyệt truy cập đến một địa chỉ khác Đối tượng Session Lưu trữ thơng tin trong một phiên làm việc cụ thể Được tạo ra ngay khi người dùng truy cập đến website Thuộc tính Timeout(phút): thời gian duy trì Session, nếu người dùng khơng tương tác với website (mặc định là 20 phút) Phương thức Abandon: hủy Session giải phóng tài nguyên cho web server Tạo biến Session: Session[“tên biến”] = ; Đọc giá trị Session: = Session[]; Đối tượng Application Đối tượng tồn cục, quản lý tồn bộ website Thơng tin được lưu trữ trong đối tượng Application được hiểu ở tất cả các trang aspx trong suốt thời gian sống của website Chỉ bị đóng/hủy khi tắt web server Tạo biến Application Application.Lock(); Application[“tên biến”]=; Application.Unlock(); Đọc giá trị = Application[]; Đối tượng Server Cung cấp thông tin của web server cho ứng dụng Phương thức Transfer(“URL”): ngừng thi hành trang hiện hành, gửi yêu cầu đến trang khác MapPath(): trả về đường dẫn vật lý tương ứng với URL MapPath(“”): đường dẫn thư mục của trang hiện tại MapPath(“\”): đường dẫn đến thư mục root IIS (C:\Inetpub\wwwroot) Đối tượng Cookies Lưu trữ thông tin người dùng tại client Thêm Cookies: Response.Cookies.Add(); Đọc giá trị Cookies: = Request.Cookies[“tên cookie”].Value; Ví dụ Xuat_Cook.Text = cookTen.Value; CÂU HỎI, BÀI TẬP 19.1. Tạo webform Login và kiểm tra đăng nhập khi sử dụng các trang trong thư mục administrator 19.2. Tạo chức năng cho phép người dùng đăng nhập và lưu giỏ hàng của người sử dụng trên website ThuongMaiDienTu 19.3 Tạo chức thống kê truy cập đơn giản website ThuongMaiDienTu YÊU CẦU KIỂM TRA, ĐÁNH GIÁ KẾT QUẢ HỌC TẬP Đọc tham số truyền kèm theo địa chỉ Tạo chức năng đăng nhập Lưu giỏ hàng Thống kê truy cập BÀI 20 HỒN CHỈNH ỨNG DỤNG WEB VỚI JQUERY PLUGIN Giới thiệu: Để trang web thêm sinh động, chúng ta phải tạo tính tương tác giữa người truy dùng với trang ngay trên trình duyệt lập trình Javascript. Xử lý tương tác bằng Javascript thơ sơ là vơ cùng phức tạp và mất nhiều thời gian Hiện nay, có nhiều bộ thư viện (xây dựng bằng Javascript) hỗ trợ đầy đủ các hàm cho phép chúng ta lập trình xử lý tương tác trên trình duyệt mà khơng mất nhiều thời gian, trong đó, thơng dụng nhất là jQuery Mục tiêu: Biết cơng dụng của jQuery plugin Cài đặt được jQuery plugin cho ứng dụng Tạo được trang web có giao diện và tương tác sinh động Tạo nút FanPage và chức năng Comment của Facebook trên trang web Cẩn thận, an tồn tránh làm lộ thơng tin tài khoản cá nhân trên website Tránh lạm dụng hiệu ứng jQuery làm cho trình duyệt xử lý chậm Nội dung: Cài đặt jQuery plugin Tải thư viện jquery và jqueryui tại jquery.com và lưu vào thư mục Scripts của website Đóng/mở nội dung trong khơng gian giới hạn $(function() { $( "#accordion" ).accordion(); }); SectionNội Section
Nội 1 dung Section 1
2 dung Section 2 Tạo hộp nhập tự động gợi ý nội dung $(function() { var availableTags = [ "ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++", "Java", "JavaScript" ]; $( "#tags" ).autocomplete({ source: availableTags }); }); Tags: Tạo khả năng kéo/thả #draggable 0.5em; } { width: 150px; height: 150px; padding: $(function() { $( "#draggable" ).draggable(); });Drag me around
Tạo khả năng kéo/thả để chọn #draggable { width: 100px; height: 100px; 0.5em; float: left; margin: 10px 10px 10px 0; } #droppable { width: 150px; height: 150px; 0.5em; float: left; margin: 10px; } $(function() { $( "#draggable" ).draggable(); $( "#droppable" ).droppable({ drop: function( event, ui ) { $( this ) addClass( "ui-state-highlight" ) find( "p" ) html( "Dropped!" ); } }); });Drag me to my target
padding: padding:Drop here
Tạo giao diện Tabs $(function() { $( "#tabs" ).tabs(); });- Nunc tincidunt
- Proin dolor
- Aenean lacinia
Nội dung tab1
Nội dung tab2
Nội dung tab3
Tạo Model Popup $(function() { $( "#dialog" ).dialog(); });Nội dung hộp thoại Popup
Tạo Datepicker $(function() { $( "#datepicker" ).datepicker(); });Date:
Tạo nút FanPage Đăng nhập Facebook Tạo Fan Page Vào https://developers.facebook.com/docs/plugins/pageplugin Khai báo các tùy chọn cho Fan Page Click chuột lên Sao chép và đặt đoạn code sau ngay sau thẻ mở Đặt đoạn code sau tại vị trí muốn hiển thị thơng tin FanPage Tạo chức năng Comment Tạo Application trên Facebook tại http://developers.facebook.com/setup/ Ghi lại App ID và App Secret sau khi click Thực hiện các bước tiếp theo để nhận được đoạn code XFBML Đặt đoạn code XFBML vào vị trí cần hiển thị nội dung Comment facebook CÂU HỎI, BÀI TẬP 20.1. Sử dụng jQuery tạo giao diện tương tác cho các trang trong website ThuongMaiDienTu 20.2. Tạo nút FanPage cho website ThuongMaiDienTu 20.3. Tạo chức năng Comment cho từng sản phẩm, bài viết (khi xem nội dung chi tiết) U CẦU KIỂM TRA, ĐÁNH GIÁ KẾT QUẢ HỌC TẬP Tạo giao diện tương tác bằng jQuery Tạo nút FanPage và Comment TÀI LIỆU THAM KHẢO Lập trình viên cơng nghệ .NET – Module 3, Trung tâm Tin học trường Đại học Khoa học Tự nhiện Tp. Hồ Chí Minh http://w3schools.com http://jquery.com http://asp.net https://facebook.com ... Dịch vụ được dùng phổ biến nhất trên Internet là World Wide? ?Web? ?(WWW, thường được gọi tắt là? ?Web) thơng qua giao thức HTTP (Hyper Text Transfer Protocol) 1.2 Phân biệt? ?Web? ?Server,? ?Web? ?Client Web? ?Server Máy? ?tính? ?lưu trữ các website Web? ?Client Máy? ?tính? ?dùng để... Tìm hiểu q? ?trình? ?xử lý tập tin? ?ASP.NET Hình 1.6. Q? ?trình? ?xử lý tập tin? ?ASP.NET CÂU HỎI, BÀI TẬP 1.1. Kể tên một số ngơn ngữ? ?lập? ?trình? ?web? ?khác? ?asp.net 1.2. Kê tên một số? ?Web? ?Browser 1.3. Với các website? ?asp.net, sau khi đã biên dịch và đặt trên? ?Web? ?Server thì... đóng góp trong q? ?trình? ?xây dựng? ?giáo? ?trình? ?này Bà? ?Rịa – Vũng? ?Tàu, ngày …… tháng …… năm 2015 Tham gia biên soạn Phan Hữu Phước – Chủ biên MỤC LỤC MƠ ĐUN LẬP TRÌNH? ?WEB? ?ASP.NET Vị trí,? ?tính? ?chất, ý nghĩa và vai trị của mơ đun: