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
Trang 1Chương 1 Tổng Quan Về ASP.Net
1 Giới thiệu về ASP.Net va Net Framework
2 Tạo ứng dụng Web với Microsoft Visual 2005
3 Các thành phần giao diện trên VS Net
4 Triển khai ứng dụng web
Trang 21.1 Tìm hiểu về ASP.Net
1 Giới thiệu về ASP.Net va Net Framework
1.2 Những ưu ñiểm của ASP.Net1.3 Quá trình xử lý tập tin Aspx1.4 Tìm hiểu về Net Phatform và Net Framework
Trang 31.1 Tìm hiểu về ASP.Net
Cuối thập niên 90, ASP (Active Server Page) ñã ñượcnhiề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íchtrong thời gian dài
Trang 4Tuy 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
Triển khai không ñược biên dịch dễ mất code
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ìnhWeb mới là ASP.Net
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 ứngdụng Web
Trang 5ASP.Net là kỹ thuật lập trình và phát triển ứng dụngweb ở 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ạiWeb 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ệntại Server và do ñó, gọi là kỹ thuật lập trình ở phía server
Trang 61.2 Những ưu ñiểm của ASP.Net
ASP.Net cho phép lựa chọn một trong các ngôn ngữlập trình : Visual Basic.Net, J#, C#,…
Trang ASP.Net ñược biên dịch 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ậtthông dịch của ASP
Trang 7ASP.Net hỗ trợ mạnh mẽ bộ thư viện phong phú và ñadạ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, …
ASPX và ASP cùng hoạt ñộng trong 1 ứng dụng
ASP.Net sử dụng phong cách lập trình 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 ứng dụng trên Windows
Trang 8Hỗ trợ quản lý trạng thái của các control
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
Trang 91.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
Trang 101.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
Trang 11.Net Framework - Bộ thư viện các lớp ñối tượng
Kiến trúc Net Framework
Trang 12Framework chính là một tập hợp hay thư viện cáclớp ñối tượng hỗ trợ người lập trình khi xây dựng ứngdụ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ệndà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âydựng ứng dụng bằng Notepad Hay với phần mềmVisual 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!
Trang 13Hệ ðiều Hành - Operating System
Với vai trò quản lý việc xây dựng và thi hành ứngdụ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ứcnăng phức tạp như sử dụng các COMponent sẽ yêu cầuphải cài ñặt Microsoft Transaction Server (MTS) hay cácchứ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, Vista sẽ ñơngiản và tiện dụng trong khi lập trình)
Trang 14Common 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 choWindows 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 chophép các lệnh "nguy hiểm" ñược thi hành Các chứcnăng này ñược thực thi bởi các thành phần bên trongCLR như: Class loader, Just In Time compiler, COM marshaller, Security engine,…
Trong các bản mới (XP.NET,2003, Vista) CLR ñược gắn kèm với hệ ñiều hành ðiều này ñảm bảo ứngdụng viết ra sẽ chạy mà không cần cài ñặt
Trang 15Base 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ùngtrong 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áclớ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ạngmới: XML Các ví dụ cho bộ thư viện này làSqlDataAdapter, SqlCommand, DataSet, XMLReader, XMLWriter,…
Trang 16Mộ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ữaquá 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ụngnhư ñang làm việc với ứng dụng Windows Cho phépchúng chuyển ứng dụng chạy trên Windows thành mộtứng dụng Web khá dễ dàng …
Trang 17Giờ ñâ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,…
Trang 18Web 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âydựng phần mềm
Web service có thể dùng ñể cung cấp các dữ liệuhay 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
Trang 19Ví dụ, công ty du lịch ñang sử dụng một hệ thốngphầ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áckhách sạn
Khách sạn có thể cung cấp 1 Web service ñể chobiết thông tin về các phòng trống tại 1 thời ñiểm Dựavào ñó, phần mềm sẽ biết liệu có ñủ chỗ ñể ñặt phòngcho 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ạcvớ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ồilại liên lạc lại với khách sạn ñể ñặt phòng
Trang 20Phâ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 ñốitượng phục vụ cho một mục ñích
Chẳng hạn, các lớp ñối tượng xử lý dữ liệu sẽ ñặttrong một namespace là Data Các lớp ñối tượng dànhcho 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
Trang 21Lợ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
Ngoài ra, namespace tránh việc các lớp ñối tượng
có tên trùng với nhau không sử dụng ñược .NET Framework cho phép chúng ta tạo ra các lớp ñối tượng
và các namespace của riêng mình
Với hơn 5000 tên có sẵn Namespace cho phép
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
Trang 22ðặ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ậntâ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ậptrình phải sử dụng kỹ thuật lập trình hướng ñối tượng
Trang 232 Tạo ứng dụng web với MS Visual 2005
2.1 Khởi ñộng MS Visual Studio Net 2.2 Tạo ứng dụng Web
Trang 24Start Programs Microsoft Visual Studio 2005
Microsoft Visual Studio 2005
2.1 Khởi ñộng MS Visual Studio Net
Trang 25Từ menu File New Website
Trang 26Kết quả:
Cửa sổ Solution Explorer
Trang Default.aspx (Design)
Trang 27Trang Default.aspx (Source)
Trang Default.aspx.cs
Trang 28•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.
2.3 Bổ sung ñiều khiển vào trang:
Trang 29Chuyển sang trang code Defaulr.aspx.cs (Double click vào trang ñang thiết kế) Nhập code cho sự kiện Page Load:
Lưu ý: Phải lưu tập tin với tùy chọn Save with Encoding…
Trang 302.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
Trang 31Chạy chương trình (không debug):Ctrl + F5
Chạy chương trình (có debug): F5
Trang 322.5 Phân loại tập tin trong ASP.Net:
Tập tin mã nguồn của Jscript js
Tập tin mã nguồn viết theo ngôn ngữ C#
.cs
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 config
Phần mở rộng của trang ASP.Net aspx
Tập tin Web Service của ứng dụng ASP.Net asmx
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).
.ascx
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.
.asax
Diễn giải
Trang 333 Các thành phần giao diện trên MS Visual Net
4.1 Solution Explorer 4.2 Property Window 4.3 Toolbox
4.4 Document Outline Window
Trang 343.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ànhphần mới cho ứng dụng:
Trang 35Thê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
Trang 36Xá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
Trang 37Xác ñịnh trang web khởi ñộng cho ứng dụng: Chọntrang cần khởi ñộng Click phải chuột Chọn Set
As Start Page
Trang 383.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
Trang 393.3 Toolbox
Hiển thị Toolbox:
Menu View ToolboxDùng ñể tạo các ñiều khiển trân trang
Trang 403.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 trangweb theo tổ chức cây rất dễ quản lý và thao tác vớicác ñối tượng có trong trang Web
Trang 414.1 Phần mềm Web Server(IIS)
4 Triển khai ứng dụng web(IIS)
4.2 Triển khai ứng dụng web
Trang 42IIS 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ăngdành cho NET và Web Service
Windows Vista tích hợp IIS 7.0
a Giới thiệu về phần mềm Web Server(IIS)
Trang 43b 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 mục Internet Information Services (IIS) Bước 4 Chọn nút Next ựể cài ựặt.
Trang 44Sau 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 ñịachỉ : http://localhost hoặc http://127.0.0.1
Trang 45Trê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.
Trang 46ðể kiểm tra cài ñặt: Khởi ñộng trình duyệt truy cập ñịachỉ : http://localhost hoặc http://127.0.0.1
Trang 47Trên Windows 2000/XP
Start Settings Control Panel Administratrive tools Internet Infomtic Services
Click phải Default Web site
c.Cấu hình Web Server
Trang 48Qui ñịnh thư mục gốc ứng dụng: Home Directory
ðể thực thi ứng dụng từ ñịa chỉ http://localhost 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ỉ: http://localhost
Trang 49Trên Windows Vista/ Windows 7
Start Settings Control Panel
Administratrive tools IIS Manager
Trang 50Quy ñịnh thư mục gốc ứng dụng: Directory Browsing Quy ñịnh trang chủ mặc ñịnh: Default Document
Trang 51Khai báo thư mục vật lý (D:\MyWebsite) Khai báo nhãn thư mục ảo (Myweb)
Trang 52Click phải: Default WebsiteAdd Application
Thư mục vật lý
Tên ánh xạ
Trên Windows Vista/ Windows 7
Trang 53Truy 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: http://Localhost/Maytinh
Trang 544.2 Triển khai ứng dụng web (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
a Sử dụng chức năng Publish web site
Trang 55Khai 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 : http://localhost/<Tên_ánh_xạ>
Trang 56Công dụng cũng giống như chức năng Publish web site nhưng không có sẳn trong bộ MS VS 2005 mã phải tự cài ñặt
b Sử dụng công cụ Web deployment Setup