Bài giảng Lập trình web ASP.Net với C# - Chương 1: Tổng quan về ASP.Net - Phạm Đào Minh Vũ

pdf 56 trang ngocly 3460
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình web ASP.Net với C# - Chương 1: Tổng quan về ASP.Net - Phạm Đào Minh Vũ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_lap_trinh_web_asp_net_voi_c_chuong_1_tong_quan_ve.pdf

Nội dung text: Bài giảng Lập trình web ASP.Net với C# - Chương 1: Tổng quan về ASP.Net - Phạm Đào Minh Vũ

  1. LẬP TRÌNH WEB ASP.NET VỚI C# Giảng Viên: Th.S Phạm Đào Minh Vũ Email: phamdaominhvu@yahoo.com 1
  2. Chương 1 Tổng Quan Về ASP.Net 1.1 Giới thiệu về ASP.Net và .Net Framework 1.2 Tạo ứng dụng Web với Microsoft Visual 2005 1.3 Các thành phần giao diện trên VS .Net 1.4 Triển khai ứng dụng web 2 Khoa CNTT,Trường CĐ CNTT TP.HCM
  3. 1.1. Giới thiệu về ASP.Net và .Net Framework 1.1.1 Tìm hiểu về ASP.Net 1.1.2 Những ưu điểm của ASP.Net 1.1.3 Quá trình xử lý tập tin .Aspx 1.1.4 Tìm hiểu về .Net Phatform và .Net Framework 3 Khoa CNTT,Trường CĐ CNTT TP.HCM
  4. 1.1.1 Tìm hiểu về ASP.Net Cuối thập niên 90, ASP (Active Server Page) đã được nhiều lập trình viên lựa chọn để xây dựng và phát triển ứng dụng web động trên máy chủ hệ điều hành Windows. ASP thể hiện những ưu điểm với mô hình lập trình thủ tục đơn giản, sử dụng hiệu quả các đối tượng: ADO (ActiveX Data Object) - Xử lý dữ liệu, FSO (File System Object) - Làm việc với hệ thống tập tin ASP cũng hỗ trợ nhiều ngôn ngữ: VBScript, JavaScript Được yêu thích trong thời gian dài 4 Khoa CNTT,Trường CĐ CNTT TP.HCM
  5.  Tuy nhiên, ASP còn tồn đọng một số khó khăn như: . Code ASP và HTML lẫn lộn, viết code khó khăn, . Hạn chế khả năng sử dụng lại code. . Mã nguồn không được biên dịch trước và không hỗ trợ cache hạn chế về tốc độ, quá trình Postback khó khăn,  Năm 2002, Microsoft giới thiệu một kỹ thuật lập trình Web mới là ASP.Net đã khắc phục được các nhược điểm của ASP củ.  Với ASP.Net, không những không cần phải biết các tag HTML, thiết kế web, mà còn hỗ trợ mạnh lập trình hướng đối tượng trong quá trình xây dựng và phát triển ứng dụng Web. 5 Khoa CNTT,Trường CĐ CNTT TP.HCM
  6.  ASP.Net là kỹ thuật lập trình và phát triển ứng dụng web ở phía Server dựa trên nền tảng của Microsoft .Net Framework.  Mã lệnh ở phía server sẽ được biên dịch và thi hành tại Web Server kết quả được chuyển sang HTML/ JavaScript/ CSS và trả về cho Client. Tất cả các xử lý lệnh ASP, ASP.Net đều được thực hiện tại Server và do đó gọi là kỹ thuật lập trình ở phía server. 6 Khoa CNTT,Trường CĐ CNTT TP.HCM
  7. 1.1.2 Những ưu điểm của ASP.Net ASP.Net cho phép lựa chọn bất kỳ ngôn ngữ lập trình nào mà bạn yêu thích: Visual Basic.Net, J#, C#, Trang ASP.Net được biên dịch trước, chuyển thành những tập tin DLL mà Server có thể thi hành nhanh chóng và hiệu quả. Yếu tố này là một bước nhảy vọt đáng kể so với kỹ thuật thông dịch của ASP. 7 Khoa CNTT,Trường CĐ CNTT TP.HCM
  8. ASP.Net hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng của .Net Framework, làm việc với XML, Web Service, truy cập cơ sở dữ liệu qua ADO.Net, ASP.Net và ASP có thể cùng hoạt động trong 1 ứng dụng. ASP.Net sử dụng phong cách lập trình mới gọi là Code behide (Tách code riêng, giao diện riêng) Dễ đọc, dễ quản lý và bảo trì. Kiến trúc lập trình giống lập trình ứng dụng trên Windows. 8 Khoa CNTT,Trường CĐ CNTT TP.HCM
  9. Hỗ trợ quản lý trạng thái của các control Hỗ trợ nhiều cơ chê Cache Tự động phát sinh mã HTML cho các Server control tương ứng với từng loại Browser Triển khai cài đặt • Không cần lock, không cần đăng ký DLL • Cho phép nhiều hình thức cấu hình ứng dụng Hỗ trợ quản lý ứng dụng ở mức toàn cục • Global.aspx có nhiều sự kiện hơn • Quản lý session trên nhiều Server, không cần Cookies 9 Khoa CNTT,Trường CĐ CNTT TP.HCM
  10. 1.1.3 Quá trình xử lý tập tin .aspx Khi Web server nhận được yêu cầu từ phía client, nó sẽ tìm kiếm tập tin được yêu cầu thông qua chuỗi URL được gởi về, sau đó, tiến hành xử lý theo sơ đồ sau 10 Khoa CNTT,Trường CĐ CNTT TP.HCM
  11. 1.1.4 Tìm hiểu về .Net Phatform và .Net Framework .Net Phatform Bao gồm .Net Framework và những công cụ được dùng để xây dựng, phát triển ứng dụng và dịch vụ ASP.Net. 11 Khoa CNTT,Trường CĐ CNTT TP.HCM
  12. .Net Framework - Bộ thư viện các lớp đối tượng Kiến trúc .Net Framework 12 Khoa CNTT,Trường CĐ CNTT TP.HCM
  13. Framework chính là một tập hợp hay là một thư viện các lớp đối tượng hỗ trợ người lập trình khi xây dựng ứng dụng như Microsoft Foundation Class(MFC) là bộ thư viện trong Visual C++, Java Foundation Class(JFC) là bộ thư viện trong Java. .NET Framework là bộ thư viện dành cho các lập trình viên .NET. Với hơn 5000 lớp đối tượng để gọi thực hiện đủ các loại dịch vụ từ hệ điều hành, chúng ta có thể xây dựng ứng dụng bằng Notepad. Hay với phần mềm Visual Studio.NET với giao diện trực quan Nếu không có.NET Framework, Visual Studio.NET chỉ là vỏ bọc! Nhưng nếu không có Visual Studio.NET, công việc lập trình .NET cũng lắm bước gian nan! 13 Khoa CNTT,Trường CĐ CNTT TP.HCM
  14. Hệ Điều Hành - Operating System Với vai trò quản lý việc xây dựng và thi hành ứng dụng .NET Framework cung cấp các lớp đối tượng (Class) để thi hành các chức năng. Tuy nhiên được "hưởng ứng" hay không tùy thuộc khả năng của HĐH. Với chức năng đơn giản như Messagebox sẽ được .NET Framework sử dụng hàm API của Windows. Chức năng phức tạp như sử dụng các COMponent sẽ yêu cầu phải cài đặt Microsoft Transaction Server (MTS) hay các chức năng trên Web cần phải cài đặt Internet Information Server (IIS). Như vậy chọn HĐH để sử dụng .NET Framework là quan trọng. (Windows XP, 2003 Server, Window 7, sẽ đơn giản và tiện dụng trong khi lập trình) 14 Khoa CNTT,Trường CĐ CNTT TP.HCM
  15. Common Language Runtime - CLR Là thành phần "kết nối" giữa các phần khác trong .NET Framework với hệ điều hành. CLR giữ vai trò quản lý việc thi hành các ứng dụng viết bằng .NET. CLR sẽ thông dịch các lời gọi từ chương trình cho Windows thi hành, đảm bảo ứng dụng không chiếm dụng và sử dụng tràn lan tài nguyên của hệ thống, không cho phép các lệnh "nguy hiểm" được thi hành. Các chức năng này được thực thi bởi các thành phần bên trong CLR như: Class loader, Just In Time compiler, COM marshaller, Security engine, Trong các bản mới (XP.NET, 2003, Win 7, ) CLR được gắn kèm với hệ điều hành. Điều này đảm bảo ứng dụng ta viết ra sẽ chạy trên máy tính khác mà không cần cài đặt. 15 Khoa CNTT,Trường CĐ CNTT TP.HCM
  16. Base Class Library – Thư viện các lớp cơ sở Đây là thư viện các lớp cơ bản nhất, được dùng trong khi lập trình hay bản thân những người xây dựng .NET Framework cũng phải dùng nó để xây dựng các lớp cao hơn. Các lớp trong thư viện này là String, Integer, Ado.Net và XML Bộ thư viện này gồm các lớp dùng để xử lý dữ liệu. ADO.NET thay thế ADO. Các lớp đối tượng XML được cung cấp để bạn xử lý các dữ liệu theo định dạng mới: XML. Các ví dụ cho bộ thư viện này là SqlDataAdapter, SqlCommand, DataSet, XMLReader, XMLWriter, 16 Khoa CNTT,Trường CĐ CNTT TP.HCM
  17. Asp.Net  Bộ thư viện các lớp đối tượng dùng trong việc xây dựng các ứng dụng Web.  Ứng dụng web xây dựng bằng ASP.NET tận dụng được toàn bộ khả năng của .NET Framework.  Một "phong cách" lập trình mới code behind.  Sự xuất hiện của ASP.NET làm cân xứng giữa quá trình xây dựng ứng dụng trên Windows và Web.  ASP.NET cung cấp một bộ các Server Control để lập trình viên bắt sự kiện và xử lý dữ liệu của ứng dụng như đang làm việc với ứng dụng Windows. Cho phép chúng chuyển ứng dụng trước đây chỉ chạy trên nền Windows thành một ứng dụng Web khá dễ dàng. 17 Khoa CNTT,Trường CĐ CNTT TP.HCM
  18. Window form Bộ thư viện về Window form gồm các lớp đối tượng dành cho việc xây dựng các ứng dụng Windows. Việc xây dựng ứng dụng loại này vẫn được hỗ trợ tốt từ trước tới nay bởi các công cụ và ngôn ngữ lập trình của Microsoft. Giờ đây, ứng dụng chỉ chạy trên Windows sẽ có thể làm việc với ứng dụng Web dựa vào Web service. Ví dụ về các lớp trong thư viện này là: Form, User Control, 18 © Dương Thành Phết-www.thayphet.net Khoa CNTT,Trường CĐ CNTT TP.HCM
  19. Web services Web services là các dịch vụ được cung cấp qua Web (hay Internet). Dịch vụ được coi là Web service không nhằm vào người dùng mà nhằm vào người xây dựng phần mềm. Web service có thể dùng để cung cấp các dữ liệu hay một chức năng tính toán. Web service được cung cấp dựa vào ASP.NET và sự hỗ trợ từ phía HĐH của Internet Information Server. 19 Khoa CNTT,Trường CĐ CNTT TP.HCM
  20. Ví dụ, công ty du lịch đang sử dụng một hệ thống phần mềm để ghi nhận thông tin về khách du lịch đăng ký đi các tour. Để thực hiện việc đặt phòng tại địa điểm du lịch, công ty cần biết thông tin về phòng trống tại các khách sạn. Khách sạn có thể cung cấp 1 Web service để cho biết thông tin về các phòng trống tại 1 thời điểm. Dựa vào đó, phần mềm sẽ biết liệu có đủ chỗ để đặt phòng cho khách du lịch không? Nếu đủ, phần mềm lại dùng 1 Web service khác cung cấp chức năng đặt phòng. Điểm lợi của Web service là không cần liên lạc với khách sạn để hỏi thông tin phòng rồi sau đó lại xác định loại phòng nào cần đặt, số lượng đặt bao nhiêu, rồi lại liên lạc lại với khách sạn để đặt phòng. 20 Khoa CNTT,Trường CĐ CNTT TP.HCM
  21. Phân nhóm các lớp đối tượng theo loại Namespace là tên gọi một nhóm các lớp đối tượng phục vụ cho một mục đích nào đó, chẳng hạn, các lớp đối tượng xử lý dữ liệu sẽ đặt trong một namespace là Data. Các lớp đối tượng dành cho vẽ đặt trong namespace tên là Drawing, . Một namespace có thể là con của một namespace lớn. Namespace lớn nhất là System. Lợi điểm của namespace là phân nhóm các lớp đối tượng, giúp dễ nhận biết và sử dụng. Với hơn 5000 tên có sẵn thì khả năng bị trùng tên là rất lớn sử dụng 1 tên đầy đủ để nói đến 1 lớp đối tượng. Ví dụ, dùng lớp WebControls, chúng ta có thể dùng tên tắt là WebControls hay tên đầy đủ là: System.Web.UI.WebControls. 21 Khoa CNTT,Trường CĐ CNTT TP.HCM
  22. 22 Hệ thống tên miền (Namespace) Khoa CNTT,Trường CĐ CNTT TP.HCM
  23. Đặc điểm của bộ thư viện các đối tượng .NET Framework là sự trải rộng để hỗ trợ tất cả các ngôn ngữ lập trình .NET. Điều này sẽ giúp những người mới bắt đầu ít bận tâm hơn trong việc lựa chọn ngôn ngữ lập trình cho mình vì tất cả các ngôn ngữ đều mạnh ngang nhau. Cũng bằng cách sử dụng các lớp đối tượng để xây dựng ứng dụng, .NET Framework buộc người lập trình phải sử dụng kỹ thuật lập trình hướng đối tượng 23 Khoa CNTT,Trường CĐ CNTT TP.HCM
  24. 1.2. Tạo ứng dụng web với MS Visual 2005 1.2.1. Khởi động MS Visual Studio .Net 1.2.2. Tạo ứng dụng Web 24 Khoa CNTT,Trường CĐ CNTT TP.HCM
  25. 1.2.1. Khởi động MS Visual Studio .Net Start Programs Microsoft Visual Studio 2010 25 Khoa CNTT,Trường CĐ CNTT TP.HCM
  26. 1.2.2. Tạo ứng dụng Web Từ menu File New Website Chọn ASP.Net Empty Web site Chọn vị trí lưu trữ - Location (D:\Wellcom) Chọn ngôn ngữ lập trình (C#) 26 Khoa CNTT,Trường CĐ CNTT TP.HCM
  27. Kết quả: Cửa sổ Solution Explorer Chuột phải -> Add new Item -> Webform -> đặt tên “Default.aspx” 27 Khoa CNTT,Trường CĐ CNTT TP.HCM
  28. Trang Default.aspx (Source) Trang Default.aspx.cs 28 Khoa CNTT,Trường CĐ CNTT TP.HCM
  29. 1.2.3 Bổ sung điều khiển vào trang: •Chọn trang Default.aspx ở chế độ Design •Nhập dòng văn bản: “Chào mừng các bạn đến vời ASP.Net” •Thêm 2 điều khiển Label đặt tên là : lbNgay, lbThoigian. 29 Khoa CNTT,Trường CĐ CNTT TP.HCM
  30. Chuyển sang trang code Default.aspx.cs (Double click vào trang đang thiết kế) Nhập code cho sự kiện Page Load: 30 Khoa CNTT,Trường CĐ CNTT TP.HCM
  31. 1.2.4 Thi hành ứng dụng : Kiểm lỗi : Menu Build Chọn Build Web Site Chấp nhận bật chế độ debug cho Website 31 Khoa CNTT,Trường CĐ CNTT TP.HCM
  32. Chạy chương trình (không debug):Ctrl + F5 Chạy chương trình (có debug): F5 32 Khoa CNTT,Trường CĐ CNTT TP.HCM
  33. 1.2.5 Phân loại tập tin trong ASP.Net: Diễn giải .asax Tập tin quản lý các sự kiện của ứng dụng (application), session, và các sự kiện khi có các yêu cầu tới trang web. .ascx Các điều khiển do người dùng tự tạo được lưu trữ với phần mở rộng là ascx (UserControl). .asmx Tập tin Web Service của ứng dụng ASP.Net .aspx Phần mở rộng của trang ASP.Net .config Tập tin cấu hình ứng dụng theo định dạng XML. Web.config chứa hầu hết các cấu hình của ứng dụng .cs Tập tin mã nguồn viết theo ngôn ngữ C# .js Tập tin mã nguồn của Jscript 33 Khoa CNTT,Trường CĐ CNTT TP.HCM
  34. 1.3. Các thành phần giao diện trên MS Visual .Net 1.3.1 Solution Explorer 1.3 2 Property Window 1.3.3 Toolbox 1.3.4 Document Outline Window 34 Khoa CNTT,Trường CĐ CNTT TP.HCM
  35. 1.3.1 Solution Explorer Hiển thị cửa số Solution Explorer: Menu View | Solution Explorer Đây là cửa số quản lý các "tài nguyên" có trong ứng dụng. Thông qua cửa sổ này, chúng ta có thể thực hiện các chức năng như: Tạo thư mục, sao chép, cắt, dán như trong Windows Explorer. Và thêm thành phần mới cho ứng dụng: 35 Khoa CNTT,Trường CĐ CNTT TP.HCM
  36. Thêm thành phần mới cho ứng dụng: Click phải Add | Add New Item Web Form: Thêm trang Web Class: Thêm lớp đối tượng Module Web Form: Thêm thư viện Web User Control: Thêm điều khiển người dùng 36  Khoa CNTT,Trường CĐ CNTT TP.HCM
  37. Xác định Project khởi động(trong trường hợp Solution có nhiều Project): Click phải chuột chọn Set as StartUp Project. 37 Khoa CNTT,Trường CĐ CNTT TP.HCM
  38. Xác định trang web khởi động cho ứng dụng: Chọn trang cần khởi động Click phải chuột Chọn Set As Start Page. 38 Khoa CNTT,Trường CĐ CNTT TP.HCM
  39. 1.3.2 Property Window Hiển thị cửa số Properties Window: Menu View | Properties Window. Dùng để thiết lập thuộc tính cho trang web và các điều khiển có trong trang web. 39 Khoa CNTT,Trường CĐ CNTT TP.HCM
  40. 1.3.3 Toolbox Hiển thị Toolbox: Menu View Toolbox Dùng để tạo các điều khiển trân trang. 40 Khoa CNTT,Trường CĐ CNTT TP.HCM
  41. 1.3.4 Document Outline Window Hiển thị cửa sổ Document Outline: Menu View / Other Windows / Document Outline. Cửa sổ này hiển thị các thành phần của trang web theo tổ chức cây rất dễ quản lý và thao tác với các đối tượng có trong trang Web. 41 Khoa CNTT,Trường CĐ CNTT TP.HCM
  42. 1.4. Triển khai ứng dụng web(IIS) 1.4.1 Phần mềm Web Server(IIS) 1.4.2 Triển khai ứng dụng web 42 Khoa CNTT,Trường CĐ CNTT TP.HCM
  43. 1.4.1 Phần mềm Web Server(IIS)  Giới thiệu về phần mềm Web Server(IIS) Internet Information Services (IIS) là phần mềm Web Server của Microsot dành cho HĐH Windows IIS có thể được sử dụng như 1 Web server, kết hợp với ASP, ASP.NET để xây dựng các ứng dụng Web tận dụng các điểm mạnh của Server-side Script, COM component, theo mô hình Client/Server. IIS có rất nhiều phiên bản: Windows 2000 tích hợp IIS 5.0. Windows XP tích hợp IIS 5.5 Windows XP tích hợp IIS 6 hỗ trợ các tính năng dành cho .NET và Web Service. Windows Vista tích hợp IIS 7.0 43 Khoa CNTT,Trường CĐ CNTT TP.HCM
  44.  Cài đặt IIS Trên Windows 2000/XP Bước 1. Chọn Control Panel | Add/Remove programs. Bước 2. Add/Remove Windows Components. Bước 3. Đánh dấu Internet Information Services (IIS). Bước 4. Chọn nút Next để cài đặt. 44 Khoa CNTT,Trường CĐ CNTT TP.HCM
  45. Sau khi cài đặt IIS, thư mục InetPub được tạo ra trong C: và chứa thư mục con wwwroot. Để kiểm tra cài đặt: Khởi động trình duyệt truy cập địa chỉ : hoặc 45 Khoa CNTT,Trường CĐ CNTT TP.HCM
  46.  Trên Windows Vista/ Windows 7 Bước 1: Start Settings Control Panel Bước 2: Classic View Chọn Programs and features Bước 3: Turn Windows features on or off Bước 4: Đánh dấu mục Internet Information Services (IIS) Bước 5: Chọn nút OK để cài đặt. 46 Khoa CNTT,Trường CĐ CNTT TP.HCM
  47. Để kiểm tra cài đặt: Khởi động trình duyệt truy cập địa chỉ : hoặc 47 Khoa CNTT,Trường CĐ CNTT TP.HCM
  48.  Cấu hình Web Server Trên Windows 2000/XP Start Settings Control Panel Administratrive tools Internet Infomtic Services Click phải Default Web site 48 Khoa CNTT,Trường CĐ CNTT TP.HCM
  49. Qui định thư mục gốc ứng dụng: Home Directory Để thực thi ứng dụng từ địa chỉ thì phải lưu ứng dụng tại thư mục này Quy định trang chủ mặc định: Documents Nghĩa là trang mặc định được mở khi truy cập địa chỉ: 49 Khoa CNTT,Trường CĐ CNTT TP.HCM
  50. Trên Windows Vista/ Windows 7 Start Settings Control Panel Administratrive tools IIS Manager 50 Khoa CNTT,Trường CĐ CNTT TP.HCM
  51. Quy định thư mục gốc ứng dụng: Directory Browsing Quy định trang chủ mặc định: Default Document 51 Khoa CNTT,Trường CĐ CNTT TP.HCM
  52.  Tạo thư mục ảo – Virtual Directory: Để truy cập website lưu ở vị trí khác cần phải ánh xạ thư mục ảo. Trên Windows 2000/XP Click phải Default Website New/ Virtual Directory Next Khai báo thư mục vật lý Khai báo nhãn thư mục ảo (Myweb) (D:\MyWebsite) 52 Next Finish Khoa CNTT,Trường CĐ CNTT TP.HCM
  53. Trên Windows Vista/ Windows 7 Click phải: Default Website Add Application Tên ánh xạ Thư mục vật lý 53 OK Khoa CNTT,Trường CĐ CNTT TP.HCM
  54. Truy cập để kiểm tra Từ IIS Manager: Click phải trang cần xem (Default.aspx) Browse Hoặc Từ trình duyệt nhập: 54 Khoa CNTT,Trường CĐ CNTT TP.HCM
  55. 1.4.2 Triển khai ứng dụng web (Publish web site)  Sử dụng chức năng Publish web site  Biên dịch ứng dụng và copy website đến thư mục cụ thể.  Các tập tin code behide đã được biên dịch thành .dll  Thao tác . Click phải vào project Publish website 55 Khoa CNTT,Trường CĐ CNTT TP.HCM
  56. Khai báo đường dẫn thư mục sẽ chứa website publish đến  Mở cửa sổ Explorer, ta sẽ thấy thư mục được tạo  Vào IIS tạo thư mục ảo ánh xạ đến thư mục đã tạo  Kiểm tra : 56  Sử dụng thư mục đã tạo để Upload lên Webserver Khoa CNTT,Trường CĐ CNTT TP.HCM