5/10/2013
1
CHƯƠNG IV:
GIỚI THIỆU VỀ
LẬP TRÌNH ASP.NET
Các components Web Application
Web App là 1 loại ứng dụng client/server.
Trong app, user tại 1 máy client truy cậpvào
1apptại 1 máy server. Trong 1 app thì
client và server đượckếtnốivới nhau thong
qua Internet(WAN)/ Intranet(LAN)
Trong1WebApp,Userlàmviệcthôngqua
1WebBrowsertại 1 máy client. Web
browser cung cấp cho user 1 giao diện ứng
dụng. (Internet Explore, Mozila …)
Các components Web Application
App này chạy trên máy server bằng các điều
khiển(controls)của web server software.
Đốivới ASP.Net App, máy server phảichạy
trên Web Server củaMicrosoft,đượcgọilà
IIS (internet information service)
Hầuhết Web App, máy server lưu Database
System trên Microsoft SQL hoặcMicrosoft
Access.
Các components Web Application
5/10/2013
2
Giao diệnmàusersử dụng 1 web App
bao gồmtậphợpcácWebpagesđược
hiệnthị trên Web Browser. Mỗitrangweb
page đượcgọilà1webformchứaHTML
Web Broswer(trình duyệt Web )
Dynamic Web Pages: bao gồm nhiều
trang mà vào mỗithời điểmhiểnthị thì
nội dung luôn thay đổi.
Dynamic Web Pages: là Web Form nhưng
chứacácServer Controls như:Tables,
Textboxes, Buttons …
Dynamic Web Pages (Web động)
Dynamic Web Pages (Web động)
Note
Khi bắt đầuBrowsergửi1Httprequest
tớitớiIISgồm địachỉ trang đang được
sử dụng, cùng với các thông tin mà user
nhậpvàotừ form. Khi IIS nhận đượcyêu
cầuthìIISsẽ xác định chắcrằng thông
tin đượcgửitừ Dynamic Web. IIS lạigửi
thông tin nhận được đếnASP.Net,
ASP.Net nhậnquảnlývàthựcthiyêucầu
nhận được.
Dynamic Web Pages (Web động)
5/10/2013
4
Để phân biệtgiữa Static Web và Dynamic
Web, IIS dựavàoloạifilemànónhận
được (.html/.htm hoặc .aspx/ .asp)
Thông tin từ ASP.Net gửitớiServer,sau
khi đãxử lý xong Web server gửilại
thông tin cho Web Browser ở dạng Http
Response và hiểnthị nội dung lên trang.
Dynamic Web Pages (Web động)
thực thi, thì application state bắt đầukhởi
tạo. Appliacation state phải đượcthiếtlậpgiá
trị.Giátrị này có hiệulựcchomọiusertrong
app cho tớithiappkế thúc.
Các trạng thái của ASP.Net
GIỚI THIỆU VỀ ASP.NET
ASP.NET (Active Server Pages .NET)
thựcchất.NETlàmột Framework
ASP.NET là một"
khung
"lậptrìnhđược
xây dựng trên bộ thực thi ngôn ngữ
chung (CLR -
Common Language
Runtime
)vàđượcsử dụng trên mộtmáy
chủ phụcvụđểtạoracácứng dụng
Web mạnh.
GIỚI THIỆU VỀ ASP.NET
Data and XML Class
(ADO.NET, SQL, XSLT, Xpath, XML,etc)
Web services
Web Forms
Windows Forms
Windows Platform
Common Language Runtime
(debug, exception, type checking, NT compilers)
Framework Base Class
(IO, string net, security, threading, text, reflection, collection, ect)
2.Common Language Runtime
Là thành phần"kếtnối" giữacácphầnkhác
trong .NET Framework vớihệđiều hành.
Common Language Runtime (CLR) giữ vai trò
quảnlýviệc thi hành các ứng dụng viếtbằng
.NET trên windows
(bộ thực thi ngôn ngữ chung CLR) là trung tâm
điểmcủa .NET Framework. Đây là một"hầm
máy" để chạycáctínhnǎng của.NET
GIỚI THIỆU VỀ ASP.NET
Các chứcnăng củaCLR
Kiểmsoátmọigiaodiện, cho phép các
ngôn ngữ có thể tích hợpvớinhaumột
cách thông suốt
Cung cấpvàquảnlýbộ nhớ
Thựchiệncácchứcnǎng bảomật
GIỚI THIỆU VỀ ASP.NET
.NET Framework Class Library Support
Thread Support
COM Marshaler
Type Checker Exception Manager
MSIL to Native Compilers
Code Manager Garbage Collector
Class Loader
Security Engine
Debug Engine
Tìm hiểu về .net framwork
II.3. Bộ thư việncáclớp đốitượng
Framework
Class Library (FCL)
Là một nhóm các lớp đốitượng phụcvụ cho mộtmục
đích nào đó. Chẳng hạn, các lớp đốitượng xử lý dữ liệu
sẽđặttrongmột namespace tên là Data. Các lớp đối
tượng dành cho việcvẽ hay hiểnthị chữđặttrong
namespace tên là Drawing.
Mộtnamespacecóthể là con củamộtnamespacelớn
hơn.
Namespace lớnnhất trong .NET Framework là System.
KIẾN TRÚC ỨNG DỤNG WEB
Một ứng dụng thường được chia thành 3 lớp phân biệt
chính:
•Tầng trình diễn (Presentation Tier – FrontEnd)
•Tầng logic (Logical Tier – Middleware)
•Tầng dữ liệu (Data Tier – BackEnd)
5/10/2013
9
KIẾN TRÚC ỨNG DỤNG WEB
Tầng dữ liệu (Data Tier)
Tầng này đảmtráchviệclấy, lưutrữ và
cậpnhậtdữ liệu, vì vậycóthể nhìn nhận
tầng này thể hiệncho1cơ sở dữ liệu, và
có thể xem các store procedures như là 1
phầncủatầng dữ liệu.
KIẾN TRÚC ỨNG DỤNG WEB
Tầng Logic (Bussiness Logical Tier)
Mộtvàikiếntrúcchiatầng logic ra làm 2 tầng
phụ riêng biệt:tầng nghiệpvụ và tầng truy
cậpdữ liệu (Business and Data Access Tiers).
Mỗitầng chỉ có thể tương tác đượcvới1tầng
liềnkề ngay sát nó. Ví dụ tầng trình diễnchỉ
Khốilượng dữ liệutruyềntrênmạng lớn.chiếmdụng
đường truyền, thêm gánh nặng cho Database Server.
a. Ưu điểm
Hỗ trợ nhiềungười dùng
Giảmbớtxử lý cho Client
Không yêu cầu máy tính ở Client có cấuhìnhmạnh.
Xử lý nhậnvàhiểnthị dữ liệutập trung tại application
Server dễ quảnlý,bảo trì và nâng cấp.
Xử lý truy cậpdữ liệutập trung tại Database Server.
b. Khuyết điểm
PPhảisử dụng thêm một Application Server .
Tăng chi phí.
Tìm hiểu các mô hình ứng dụng (3 lớp)
5/10/2013
11
II.4. Những ưu điểm của
ASP.Net
ASP.Net cho phép bạnlựachọnmộttrongcácngôn
ngữ lậptrìnhmàbạn yêu thích: Visual Basic.Net, J#,
C#,…
Trang ASP.Net đượcbiêndịch trước. Thay vì phải đọc
và thông dịch mỗikhitrangwebđượcyêucầu, ASP.Net
biên dịch những trang web động thành những tậptin
DLL mà Server có thể thi hành nhanh chóng và hiệu
quả.Yếutố này là mộtbướcnhảyvọt đáng kể so vớikỹ
thuật thông dịch củaASP.
II.5. Quá trình xử lý tập tin ASPX
CÁC PHẦN MỀM
Windows 2000 (Professional hay Server)
hay Windows XP (Home hay Professional).
cầudữ liệutừ phía trình duyệtsử dụng giao
thức HTTP cho phép ngườidủng có thể truy
cập file HTML
Webserver biên dịch mã lệnh thành trang HTML
trướckhigửivề cho client
Có thể dùng IIS, hoặcTomcatđể thếtlập
webserver
GIỚI THIỆU VỀ ASP.NET
GIỚI THIỆU VỀ WEBSERVER
5/10/2013
13
GIỚI THIỆU VỀ WEBSERVER
GIỚI THIỆU VỀ WEBSERVER
GIỚI THIỆU VỀ WEBSERVER
Cấu trúc của ứng dụng
Thư mục App_Data
Là nơichứadữ liệucủa ứng dụng, đượcsử
dụng trong ASP.NET 2.0 để lưutrữ dữ liệucục
bộ của ứng dụng
Thư mục App_Code
App_Code là nơichứasourcecodecholớptiện
ích và các đốitượng nghiệpvụ (ví dụ:cácfile
.cs, .vb, và .jsl)
5/10/2013
14
Cấu trúc của ứng dụng
Trong một ứng dụng đượcbiêndịch động,
ASP.NET biên dịch code trong thư mục
<authentication mode="Windows"/>
</system.web>
</configuration>
5/10/2013
15
Cấu trúc của ứng dụng
Sử dụng tag <add> chứathuộctínhappSettings
để định nghĩabiếntoàncục trong file XML
Cú pháp:
Cú pháp truy xuấtbiến:
<add key=“variableName” value=“value”/>
varName=ConfigurationManager.AppSettings
["variableName "] ;
Cấu trúc của ứng dụng
Tập tin Cascading Style Sheet(.css)
Chứacácđịnh dạng tài liệuhiểnthị trên trình
duyệt, các định dạng được định nghĩatrongtập
tin này nhằmdễ quảnlý,cậpnhậtvàhiệu
chỉnh. Sử dụng tag <link> để liên kết đếntập
tin .css
<link type="text/css" ref=“FileName.css“
rel="stylesheet" />
Cấu trúc của ứng dụng
Tập tin JavaScript-Jscript(.js)
Tậptinnàyđượcsử dụng cho các tiếntrình
phía client, sử dụng tag <script> để liên kết
đếntậptin.js.
<script type="text/javascript"
Cách viết code trong chương trình
Trong đó
: FileNameCode là tên tậptincode.
Tậptinnàycóphầnmở rộng là .aspx.cs, .aspx,
.vb, … tuỳ theo ngôn ngữ sử dụng để viếtcode
Ví dụ:
5/10/2013
17
Cách viết code trong chương trình
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="VD.aspx.cs" Inherits="VD" %>
<html xmlns=" >
<head runat="server"><title>Untitled Page</title></head>
<body>
<form id="form1" runat="server">
<asp:Label ID="Label1" runat="server"> </asp:Label>
<br />
<asp:Button ID="Button1" runat="server"
OnClick="Button1_Click" Text="Button" />
</form>
</body></html>
VD.aspx
Cách viết code trong chương trình
protected void Button1_Click(object sender,
EventArgs e)
{
Label1.Text = "Hello Word";
}
VD.aspx.cs
Một số NAMESPACE và chức năng
Collections
Chứacácđốitượng như Danh
sách, hàng đợivàbảng băm
ComponentModel
Chứacáclớpchophépthayđổi
các control và component trong
cả lúc chạyvàlúcthiếtkế.
Configuration
Cung cấpcácphương thứcvà
đốitượng cho phép truy cập
đếncácthôngsố cấuhìnhcho
.NET
CÁC THÀNH PHẦN TRONG TRANG
Data
Chứacáclớpchophéptương tác với
nguồndữ liệu, Hình thành nên ADO.NET
Math
Chứa các hàm và hằng số liên quan đến
xử lý toán học.
Web
Cung cấpcơ chế truyền thông giữa
Client/Browser;Nómôtả các đốitượng
đượcsử dụng vớiASP.NET
XML
Chứa các lớp để xử lý dữ liệu XML
Drawing
Chứa các lớp cho phép sử dụng khả
năng về đồ hoạ
CÁC THÀNH PHẦN TRONG TRANG
<%@ Page Language="C#"
CodeFile=“login.aspx.cs“ Inherits=“login" %>
CÁC THÀNH PHẦN TRONG TRANG
@import: cho phép chỉ ra không gian tên được
import vào trang aspx
Ví dụ:
<%@import namespace=“System.Data” %>
@Register:kếthợpaliasvớinamespacevà
tên lớp cho ký hiệutrongcúphápcủaserver
control. Chỉ thị này đượcsử dụng khi drag và
drop một user control vào trang aspx
5/10/2013
20
Cách tạo và chạy ứng dụng
Cấu hình IIS
1. Mở ControlPanel Administrative Tool – chọn
Internet Information Services (IIS)
2. Click Phải Default Web Sites – chọnNew–
chọnVirtualDirectory Next nhậptênthư
mục ảo Next.
3. Click Browse chọnthư mụcwebsiteNext
chấpnhậncácoptionmặc địnhnextfinish
Cách tạo và chạy ứng dụng
Tạo ứng dụng web trong Visual Studio.NET
Khởi động Visual Studio.NET
ChọnFile–New–Website
Trong hộpthoạiNewWebsite
- Template: chọn ASP.NET Web site.
- Location: file system click Brows chọnvị trí
lưuwebsite
click phảichọn “Set As Start Page”.
NhấnF5để chạy ứng dụng