Giáo trình Lập trình trên nền Web: Phần 1 cung cấp cho người học những kiến thức như: Tổng quan về ASP.NET; Ngôn ngữ lập trình C#; Làm việc với Web Form. Mời các bạn cùng tham khảo!
MỤC LỤC LỜI NÓI ĐẦU CHƢƠNG 1: TỔNG QUAN VỀ ASP.NET 1.1 Giới thiệu tổng quan công nghệ NET 1.1.1 Sự đời NET 1.1.2 .NET Framework 1.1.3 Ƣu điểm NET Framework 1.2 Giới thiệu ASP.NET 1.3 Cài đặt Visual Studio.NET 1.3.1 Các phiên NET 1.3.2 Cài đặt Visual Studio.NET 1.3.3 Giao diện Visual Studio.NET 1.4 Xây dựng ứng dụng Web 11 1.4.1 Tạo ứng dụng Web 11 1.4.2 Lƣu ứng dụng Web 12 1.4.3 Chạy ứng dụng Web 12 1.5 Bài tập 13 CHƢƠNG 2: NGÔN NGỮ LẬP TRÌNH C# 14 2.1 Giới thiệu ngôn ngữ lập trình C# 14 2.2 Cấu trúc chƣơng trình C# 15 2.3 Các kiểu liệu 15 2.3.1 Kiểu liệu xây dựng sẵn 16 2.3.2 Chọn kiểu liệu 17 2.3.3 Chuyển đổi kiểu liệu 18 2.3.4 Kiểu liệu mảng 18 2.3.5 Kiểu liệu xâu 20 2.4 Biến 20 2.5 Biểu thức toán tử 21 2.6 Các lệnh điều khiển 22 2.6.1 Các câu lệnh rẽ nhánh 22 2.6.2 Các câu lệnh lặp 27 2.7 Xây dựng lớp đối tƣợng 31 2.7.1 Xây dựng lớp 31 2.7.2 Tạo đối tƣợng 35 2.8 Xử lý ngoại lệ 36 2.8.1 Câu lệnh throw 37 2.8.2 Câu lệnh catch 38 2.8.3 Câu lệnh finally 43 2.9 Bài tập 45 CHƢƠNG 3: LÀM VIỆC VỚI WEB FORM 51 3.1 ASP.NET Web Form 51 3.1.1 Mơ hình lập trình phía máy chủ 51 3.1.2 Giới thiệu ASP.NET 52 3.1.3 Cơ chế xử lý file ASP.NET phía máy chủ 54 3.1.4 Web Form ASP.NET 58 3.1.5 Tìm hiểu cấu trúc trang ASP.NET 58 3.1.6 Các phƣơng pháp viết mã ASP.NET 60 3.1.7 ASP.NET Server Control 62 3.1.7 Điều khiển Validation Controls 119 3.2 Tạo sử dụng Custom Control 135 3.2.1 Giới thiệu User Custom Control 135 3.2.2 Các bƣớc tạo User Custom Control 135 3.2.3 Thêm thuộc tính, phƣơng thức kiện vào UCC 137 3.2.4 Truy cập thuộc tính, phƣơng thức phần tử UCC 139 3.3 Các đối tƣợng ASP.NET 143 3.3.1 Đối tƣợng Request 144 3.3.2 Đối tƣợng Response 147 3.3.3 Đối tƣợng Server 150 3.3.4 Đối tƣợng Session 151 3.3.5 Đối tƣợng Application 153 3.3.6 Đối tƣợng Cookies 155 3.4 Tệp tin quản lí cấu hình ứng dụng 158 3.4.1 Tệp tin Global.asax 158 3.4.2 Tệp tin Web.config 160 3.5 Làm việc với giao diện Web 163 3.5.1 Master Page 163 3.5.2 Cascading Style Sheets - CSS 167 3.5.3 Theme Skin 172 3.5.4 Navigation Controls 176 3.6 Bài tập 186 CHƢƠNG 4: TRUY NHẬP CƠ SỞ DỮ LIỆU 195 4.1 Giới thiệu chung 195 4.2 Kiến trúc ADO.NET 196 4.3 Tìm hiểu trình cung cấp liệu ADO.NET 197 4.4 Các namespace ADO.NET 199 4.5 Các lớp thao tác với sở liệu 204 4.5.1 Lớp Connection 204 4.5.2 Lớp Command 209 4.5.3 Lớp DataReader 218 4.5.4 Lớp DataAdapter 222 4.5.5 Lớp DataSet 223 4.5.6 Lớp DataColumns 224 4.5.7 Lớp DataRow 227 4.5.8 Lớp DataTable 227 4.6 Data Binding 228 4.6.1 Giới thiệu DataBinding 228 4.6.2 Data Binding 229 4.6.3 Các điều khiển Data Source 232 4.7 Các điều khiển liên kết liệu 237 4.7.1 Điều khiển GridView 237 4.7.2 Điều khiển DataList 253 4.7.3 Điều khiển Repeater 254 4.7.4 DetailView 255 4.7.5 FormView 256 4.7.6 ListView 257 4.8 Bài tập 257 CHƢƠNG 5: WEB SERVICES 266 5.1 Giới thiệu Web Services 266 5.2 Kiến trúc thành phần Web Services 266 5.3 Tạo Web Services 270 5.4 Kiểm tra Web Services 271 5.5 Sử dụng Web Services 272 5.5.1 Sử dụng Web Services tạo 272 5.5.2 Sử dụng Web Services đƣợc cung cấp mạng 276 5.6 Bài tập 279 TÀI LIỆU THAM KHẢO 281 LỜI NÓI ĐẦU Ngày việc sử dụng Internet dịch vụ Internet phần tất yếu sống Công nghệ Internet ứng dụng phát triển Web Internet làm cho đời sống chung ta thay đổi Internet nguồn thông tin quý giá phục vụ cho việc học tập, nghiên cứu, kinh doanh, giải trí Vì ngày có nhiều ứng dụng Internet sử dụng giao diện Web Các công nghệ phát triển Internet ngày hoàn thiện Trên sở đó, mơn học Lập trình Web đƣợc đƣa vào giảng dạy nghiên cứu khoa, ngành tin học, toán tin, thƣơng mại điện tử hay ngành có liên quan khác trƣờng đại học Môn học tiền đề cung cấp cho sinh viên nhà nghiên cứu lý thuyết từ sở ứng dụng nhằm xây dựng xử lý thông tin dƣới dạng trang Web, nhờ cho phép họ tiếp cận dễ dàng với kỹ thuật lập trình hiệu ứng dụng Web Internet Tập giảng nghiên cứu công nghệ phổ biến tiên tiến đƣợc dùng đề tạo ứng dụng chạy Web MicroSoft ASP.NET, ngơn ngữ lập trình C#, truy xuất liệu qua ADO.NET Web Services đáp ứng đƣợc việc học tập nghiên cứu sinh viên Đại học, Cao đẳng ngành Công nghệ thông tin Khoa học máy tính Trƣờng Đại học Sƣ phạm kỹ thuật Nam Định Tập giảng gồm chƣơng Chƣơng 1: Tổng quan ASP.NET Chƣơng 2: Ngôn ngữ lập trình C# Chƣơng 3: Làm việc với Web Form Chƣơng 4: Truy nhập sở liệu Chƣơng 5: Web Services Nội dung chƣơng cung cấp kiến thức thiết kế lập trình xử lý liệu Web dựa công cụ Visul Studio Net Sau phần có ví dụ giúp sinh viên dễ tiếp cận nắm bắt vấn đề Cuối chƣơng có tập giúp cho sinh viên ơn tập hệ thống kiến thức mơn học Trong q trình biên soạn nhóm chúng tơi bám sát chƣơng trình môn học đƣợc nhà trƣờng ban hành, cố gắng thể nội dung bản, đại gắn gắn với yêu cầu thực tế Tuy nhiên khả có hạn, hạn chế thời gian nên khơng tránh khỏi sai sót Rất mong nhận đƣợc đóng góp chân thành đồng nghiệp bạn đọc để tập giảng ngày hồn thiện NHĨM TÁC GIẢ CHƢƠNG 1: TỔNG QUAN VỀ ASP.NET 1.1 Giới thiệu tổng quan công nghệ NET 1.1.1 Sự đời NET Trong lĩnh vực phát triển phần mềm có nhiều ngơn ngữ lâp trình đƣợc sử dụng để phát triển (nhƣ Delphi, Ada, Cobol, Fortran, Basic, LISP, Prolog, Foxpro, Java, Pascal, C/C++, VB.NET, VC++, C# ) Mỗi ngôn ngữ có ƣu nhƣợc điểm riêng Những ƣu điểm có tính đặc thù ngơn ngữ điều đƣợc khẳng định Tuy nhiên, khó để tận dụng đƣợc sức mạnh tất ngơn ngữ lập trình dự án phần mềm, chẳng hạn khơng thể khó khăn để viết ứng dụng có sử dụng đồng thời ngôn ngữ Visual Basic Java hay Foxpro với Delphi v.v… Nói cách khác, việc “liên thơng” ngơn ngữ gần nhƣ Cũng khác biệt ngơn ngữ lập trình mà việc tiếp cận hay chuyển đổi sang ngơn ngữ lập trình tốn nhiều thời gian Vì vậy, dự án sử dụng ngơn ngữ lập trình khác chi phí cho chuyển đổi lớn gây lãng phí thời gian khơng cần thiết chất lƣợng phần mềm chắn không cao Từ hạn chế trình phát triển phần mềm nhƣ nêu, địi hỏi phải có cách tiếp cận cho tối ƣu nhất, vừa đảm bảo tốn chi phí chuyển đổi vừa đảm bảo nhiều ngƣời tham gia dự án mà không thiết phải viết ngơn ngữ lập trình, đồng thời ứng dụng phải hoạt động tốt môi trƣờng mạng Internet Đó lý để Microsoft cho công nghệ phát triển phần mềm NET 1.1.2 .NET Framework Thơng thƣờng, ngơn ngữ lập trình có tập thƣ viện riêng, chẳng hạn: VC++ có thƣ viện msvcrt.dll; Visual Basic có svbvm60.dll …Các thƣ viện chứa hàm, thủ tục ngôn ngữ Tất có ý nghĩa logic giống nhƣng cách sử dụng hay cú pháp hầu nhƣ khác Ý tƣởng Microsoft không xây dựng tập thƣ viện riêng biệt cho ngơn ngữ lập trình mà xây dựng thƣ viện dùng chung Tập thƣ viện dùng chung hình thành nên khung (Framework) Bộ Khung thực chất tập thƣ viện đƣợc xây dựng sẵn, đáp ứng nhu cầu phát triển ứng dụng Desktop, Network, Mobile, Web… Hình 1.1 Mơ hình xây dựng phần mềm ngôn ngữ truyền thống Các thành phần chức NET Framework Common Language Runtime (trình thực thi ngôn ngữ chung): Sau ứng dụng đƣợc biên dịch file “exe” Nội dung file exe tuân theo chuẩn/ngôn ngữ chung, dù viết C# hay VB.NET Ngôn ngữ gọi ngôn ngữ chung), để file exe trung gian chạy đƣợc máy hành cần phải đƣợc biên dịch mã máy tƣơng ứng Việc biên dịch chạy đƣợc nhờ chƣơng trình thực thi ngơn ngữ chung – CLR (Common Language Runtime) Hình 1.2 Kiến trúc NET Framework Base Class Library: Là tập thƣ viện chứa lớp để sử dụng tất ngơn ngữ NET Ví dụ lớp xử lý xâu, xử lý toán học… ADO.NET: Là tập thƣ viện chuyên dành cho thao tác với sở liệu ASP.NET: Các thƣ viện dành cho phát triển ứng dụng Web (Web Form) Windows Forms: Các thƣ viện dành cho phát triển ứng dụng Windows Common Language Specification: Phần có nhiệm vụ đặc tả ngơn ngữ chung để chƣơng trình viết ngơn ngữ lập trình khác phải tn theo Nói cách khác, biên dịch chƣơng trình viết ngơn ngữ lập trình khác ngôn ngữ thống chung (Common Language) Các ngôn ngữ lập trình Hình 1.3 Mơ hình biên dịch thực thi chƣơng trình ứng dụng NET 1.1.3 Ƣu điểm NET Framework - Tất ngôn ngữ thừa hƣởng thƣ viện thống Khi sửa chữa hay nâng cấp thƣ viện phải thực lần - Cách thức phát triển ứng dụng quán tƣơng tự ngôn ngữ lập trình Có thể chuyển đổi sang ngơn ngữ lập trình NET khác cách dễ dàng - Viết ứng dụng Web Form không khác nhiều so với ứng dụng Win Form - Cung cấp tập thƣ viện truy xuất CSDL thống (ADO.NET) cho ngôn ngữ NET - Hỗ trợ chế “Write one – Run everywhere” (ciết lần chạy nơi) Một ứng dụng viết NET chạy hệ điều hành mà không cần phải sửa lại code, miễn máy có cài NET framework - Cung cấp hệ thống kiểu chung (Common Type), đảm bảo tính thống kiểu liệu ngơn ngữ lập trình - Cho phép sử dụng nhiều ngơn ngữ lập trình dự án - Kết thừa sử dụng chéo ngôn ngữ lập trình dễ dàng nhƣ ngơn ngữ (có thể viết class C#, sau kế thừa VB.NET ngƣợc lại) - Việc triển khai (Deploy) ứng dụng dễ dàng Chỉ cần Copy-and-run (copy chạy) Không cần cài đặt tránh đƣợc “các lỗi DLL” nhƣ trƣớc 1.2 Giới thiệu ASP.NET - ASP.NET công nghệ phát triển ứng dụng Web, hệ ASP (Active Server Page – Trang Web đƣợc xử lý bên phía máy chủ) ASP.NET thành phần nội (có sẵn) NET Framework Vì tận dụng đƣợc sức mạnh NET Framework ASP.NET có số ƣu điểm chính: - Có thể sử dụng để phát triển ứng dụng Web đủ kích cỡ, từ ứng dụng nhỏ ứng dụng toàn doanh nghiệp (Enterprise) - Ứng dụng viết ASP.NET dễ dàng tƣơng thích với nhiều loại trình duyệt khác Nhà phát triển không cần phải quan tâm nhiều đến trình duyệt đƣợc sử dụng để duyệt Website, điều đƣợc framework tự render mã tƣơng ứng - Khi sử dụng IDE Visual Studio, cách thức lập trình giống nhƣ lập trình Win Form - Truy xuất liệu cơng nghệ ADO.NET có sẵn NET Framework - Chạy ứng dụng cực nhanh chế biên dịch Cached - Có thể tăng tốc ứng dụng cách Cache điều khiển, trang - Bảo mật vƣợt trội - Tốn dòng lệnh so với ASP/PHP/Perl thực cơng việc - Dễ dàng bảo trì dễ đọc Code Giao diện đƣợc tách biệt Điều giúp cho tính chun biệt hóa cao (một ngƣời lo code phần xử lý nghiệp vụ, ngƣời khác lo code phần giao diện v.v…) - ASP.NET sử dụng ngơn ngữ lập trình VB.NET C# để phát triển ứng dụng 1.3 Cài đặt Visual Studio.NET 1.3.1 Các phiên NET Có nhiều phiên NET Framework khác đƣợc phát hành qua giai đoạn - NET Framework 1.0 phát hành vào năm 2002 - NET Framework 1.1 phát hành vào năm 2003 - NET Framework 2.0 phát hành vào năm 2005 NET Framework 3.0 phát hành vào năm 2006 NET Framework 3.5 phát hành vào năm 2007 NET Framework phát hành năm 2010 NET Framework 4.5 phát hành vào năm 2012 1.3.2 Cài đặt Visual Studio.NET Việc cài đặt phiên Visual Studio.Net có nhiều lựa chọn khác ta tiến hành nhƣ sau: - Chuẩn bị đĩa chƣơng trình Visual Studio.Net mã quyền sử dụng phần mềm - Đọc tệp tin yêu cầu phần cứng trƣớc cài đặt - Chạy tệp tin setup.exe làm theo hƣớng đẫn hình trình cài đặt 1.3.3 Giao diện Visual Studio.NET Visual Studio sử dụng IDE chung cho tồn ngơn ngữ lập trình (ASP.NET, VB.NET, C#,…) Điều đảm bảo tính qn cho ngơn ngữ NET Hình 1.4 Giao diện mơi trƣờng phát triển - Tab Design để hiển thị trang Web chế độ Design, tức cho phép sửa chữa nội dung trang Web trực quan Hình 1.5 Mở trang chế độ Design - Tab Source: Mở trang chế độ mã nguồn HTML Tại ngƣời dùng soạn thảo trực tiếp thẻ HTML Hình 1.6 Mở trang chế độ Source - Tab Split: Cho phép xem trang Web đồng thời hai chế độ Hình 1.7 Mở trang chế độ Design Source Root Hình 3.88 Thay đổi định dạng SiteMappath Chọn mục Auto Format , chọn lựa chọn scheme thích hợp danh sách click OK Sau chọn mục Edit Templates để thiết kế nội dung cho SiteMapPath : có thành phần thẻ bên gồm RootNodeTemplate, NodeTemplate, CurrentNodeTemplate PathSeparatorTemplate Nhập nội dung thẻ Current NodeTemplate để hiển thị nội dung thẻ title thẻ description Trong cách viết theo dạng kết nối liệu đơn giản (simple data binding) dùng để lấy nội dung title %> var2: {1} ”, var1, var2); } else { Console.WriteLine( “var2: {0} > var1: {1} ”, var2, var1); } var1 = 30; if ( var1 > var2) { var2 = var1++; Console.WriteLine( “Gan gia tri var1 cho