You are on page 1of 11

MC LC

1. ASP.NET l g? .................................................................................................................. 2
1.1 ASP.NET tch hp vi NET Framework ..................................................................................... 2
1.2 ASP.NET l a ngn ng ............................................................................................................. 2
1.3 ASP.NET l hng i tng (Object-Oriented) ........................................................................ 2
1.4 ASP.NET c bin dch ............................................................................................................. 2
1.5 ASP.NET c lu tr trn my bi Common Language Runtime ............................................ 3
1.6 ASP.NET d dng trin khai v cu hnh .................................................................................... 3
2. Cc tnh nng mi trong ASP.NET 3.5 ............................................................................ 3
2.1 ASP.NET AJAX .......................................................................................................................... 4
2.2 Cc Control mi ........................................................................................................................... 4
2.3 LINQ ............................................................................................................................................ 4
2.4 Cc Assembly mi ....................................................................................................................... 4
2.5 ASP.NET Dynamic Data ............................................................................................................. 4
2.6 ASP.NET MVC (Model View Control) ...................................................................................... 4
3. Cch to trang web trong Visual Studio 2008 ................................................................ 5
3.1 Khi ng Visual Studio 2008 hoc Visual Web Developer 2008 (hnh 1) ................................ 5
3.2 Cch to d n mi ...................................................................................................................... 5
3.3 V d 1 .......................................................................................................................................... 7
4. Gii thiu v s kin (Event) trong ASP.NET ................................................................. 9
4.1 Mt s tp c bn trong ASP.NET .............................................................................................. 9
4.2 Chu k sng ca trang web trong ASP.NET (ASP.NET Page Life Cycle) ................................ 9
4.3 Mt s cc s kin ca trang web (Page Event) .......................................................................... 9
4.4 S kin ng dng (Event Application) ...................................................................................... 10
5. Ti liu tham kho ........................................................................................................... 11
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
2


Bi m u

GII THIU TNG QUAN V ASP.NET 3.5


Bi ny gii thiu tng quan v cng ngh ASP.NET 3.5 (Active Server Page). ASP.NET l g? Gii
thiu nhng tnh nng mi ca ASP.NET 3.5 s vi ASP.NET 2.0. Cch to website trong Visual Studio 2008.

1. ASP.NET l g?
Trc ht, tn y ca ASP.NET l Active Server Pages .NET (.NET y l .NET framework). Ni
n gin th ASP.NET l mt cng ngh c tnh cch mng dng pht trin cc ng dng v mng hin nay
cng nh trong tng lai. Bn lu ch ASP.NET l mt phng php t chc hay khung t chc (framework)
thit lp cc ng dng ht sc hng mnh cho mng da trn CLR (Common Language Runtime).
1.1 ASP.NET tch hp vi NET Framework
.NET Framework c chia thnh b cc tc v cho tng chc nng gm cc lp (class), cc cu trc
(structures), cc giao din (interfaces) v cc li (core) thnh phn chng trnh. Trc khi s dng thnh phn
no bn phi hiu c bn v chc nng, cc t chc ca n. Mi mt trong hng nghn cc tng lp c nhm
theo trnh t logic, th bc c gi l mt namespace. Mi namespace cung cp mt tnh nng.
1.2 ASP.NET l a ngn ng
xy dng mt ng dng web chng ta khng ch chn mt ngn ng m c th chn nhiu ngn ng
khc. iu quan trng l cc ngn ng chng ta chn m ca n dch c ra m IL. iu c ngha l IL l
ngn ng ca .NET v ch c CLR nhn bit c IL.
1.3 ASP.NET l hng i tng (Object-Oriented)
ASP.NET l ngn ng lp trnh hng i tng s dng cc ngn ng .NET. N cung cp b cc i
tng nh v thc s l mt tng lm vit trn nguyn l ca HTTP v HTML. M ngun ca chng ta khng
c truy cp ton b cc i tng trong .NET Framework nhng c th khai thc tt c cc quy c ca mt
mi trng OOP (Object Oriented Programming). Chng ta c to cc lp, giao din, k tha cc lp Chng ta
c th kim sot c cc i tng trong chng trnh nh hin th d liu v cc s kin ca i tng.
1.4 ASP.NET c bin dch
Mt ng dng ASP.NET lun lun c bin dch, n khng chy bng m ca C# hoc Visual Basic m
khng c bin dch trc. Mt ng dng ASP.NET thc s c bin dch thng qua 2 giai on:
Giai on u tin nhng cc m (code) bn vit (C#, Visual Basic hoc ngn ng .NET khc)
c dch bi Microsoft Intermediate Language (MSIL). Giai on dch ny c dch t
ng khi trang wed u tin yu cu. Chng ta c th thc hin dch trc. Cc tp c dch
thnh m IL (Intermediate Language Code).
Giai on tip theo c dch trc khi trang Web c thc thi. Ti giai on ny m IL c
dch thnh bn m my (Native Machine Code). Giai on ny c gi l Just-In-Time (JIT).


Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
3



















1.5 ASP.NET c lu tr trn my bi Common Language Runtime
Kha cnh quang trng nht ca cng c ASP.NET l n chy trong mi trng thi gian thc (Runtime)
ca CLR (Common Language Runtime). CLR l my o (virtual machine) trong Microsoft .NET, do c ngn
ng trung gian IL nn khi pht trin ng dng trn .NET, chng ta khng b ph thuc vo thit b, c ngha l
theo Microsoft ni th ng dng .NET c th chy trn bt k thit b no c .NET Framework. Tt c cc
namespace, cc ng dng, cc lp trong b .NET Framework c gi tt l b qun l m. CLR cng cung cp
cc dch v quan trng khc nh:
Qun l b nh
Thu nht rc
Qun l cc tuyn
X l ngoi l
An ton
1.6 ASP.NET d dng trin khai v cu hnh
Mi s ci t .NET Framework u cung cp cc lp nh nhau. trin khai ng dng ASP.NET
chng ta ch cn sao chp cc tp tin vo th mc o trn my ch (server) v my ch ch cn c .NET
Framework.
Vic cu hnh d dng n gin khng ph thuc vo IIS (Internet Information Services). Cu hnh trong
ASP.NET c t trong tp web.config. Tp web.config c cng vi th mc cha trang web ca chng
ta. Tp web.config khng bao gi b kha, chng ta c th truy cp bt k lc no, vic sa tp ny hon ton d
dng v chng c lu di dng XML.
2. Cc tnh nng mi trong ASP.NET 3.5
Microsoft pht hnh ASP.NET vo ngy 19 thng 11 nm 2007 cng vi Visual Stutio 2008. y l
bc tin ha t ASP.NET 2.0 ti ASP.NET 3.5. Nu chng ta ang s dng ASP.NET 2.0 s dng ASP.NET
3.5 ch cn ci t thm cc tnh nng mi ca ASP.NET 3.5.
Code in VB.NET
VB.NET Compiler
Code in Another
.NET Language
Appropriate Compiler
Code in C#
C# Compiler
IL (Intermediate
Language) Code
Just-In-Time (JIT) Compiler
Native Machine
Code
Execute
The Common
Language Runtime
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
4

Trong phn ny s gii thiu mt s tnh nng mi trong ASP.NET 3.5
2.1 ASP.NET AJAX
Trong ASP.NET 2.0, ASP.NET AJAX c ci t thm vo. Tuy nhin trong ASP.NET 3.5, ASP.NET
AJAX c tch hp. vo trong .NET Framework, do qu trnh xy dng giao din ngi dng c d
dng v trc quan. ASP.NET AJAX Control Extenders c tch hp ToolBox ca Visual Studio 2008. Cc
tnh nng ca ASP.NET AJAX s c trnh by bi sau.
2.2 Cc Control mi
Cc control ListView v DataPager c th dng mi kiu d liu mi LinqDataSource.
ListView linh hot hn v c cha ton b tnh nng ca Gridview, Datagrid, Repeater trong
ASP.NET 2.0. N cung cp cc kh nng v chn, xa, sa, sp xp, phn trang. Chng ta hon ton nh dng
c vic d liu hin th trn ListView m khng cn phi s dng th <table>. Cc Template trong ListView
rt phong ph v a dng. Datager cung cp cho ListView trong vic phn trang.
2.3 LINQ
LINQ (Language Integrated Query) a ra kh nng lp trnh mi trong .NET. Gii php lp trnh hp
nht, em n kh nng truy vn d liu theo c php SQL trc tip trong C# hay VB.NET, p dng cho tt c
cc dng d liu t i tng n C s d liu quan h v XML.
ASP.NET LinqDataSource cho php chng ta c th s dng LINQ lc (filter), order v nhm (group)
d liu trc khi binding vo List Control.
2.4 Cc Assembly mi
System.Core.dll Cc implementation cho LINQ to Objects
System.Data.Linq.dll - Cc implementation cho LINQ to SQL
System.Xml.Linq.dll - Cc implementation cho LINQ to XML
System.Data.DataSetExtensions.dll - Cc the implementation cho LINQ to DataSet
System.Web.Extensions.dll: Cc implementation for ASP.NET AJAX
2.5 ASP.NET Dynamic Data
ASP.NET Dynamic Data cung cp mt Framework cho php chng ta nhanh chng xy dng mt chc
nng ng dng driver-data, da trn LINQ to SQL hay Entity Framework. N cng c thm nhiu tnh linh hot
cho cc DetailsView, FormView, GridView, ListView trong kim tra tnh hp l ca d liu, hoc chnh sa li
cc mu thay i cch hin th d liu.
2.6 ASP.NET MVC (Model View Control)
Kin trc MVC l vic chia tt c mc ca mt ng dng ra lm ba thnh phn (component) khc nhau
Model, View v Controller:
Model: Model c giao nhim v cung cp d liu cho c s d liu v lu d liu vo cc kho cha
d liu. Tt c cc nghip v logic c thc thi Model. D liu vo t ngi dng s thng qua View c
kim tra Model trc khi lu vo c s d liu. Vic truy xut, xc nhn, v lu d liu l mt phn ca
Model.
View: View hin th cc thng tin cho ngi dng ca ng dng v c giao nhim v cho vic nhn
cc d liu vo t ngi dng, gi i cc yu cu n b iu khin, sau l nhn li cc phn hi t b iu
khin v hin kt qu cho ngi dng. Cc trang HTML, JSP, cc th vin th v cc file ngun l mt phn ca
thnh phn View.
Controller: Controller l tng trung gian gia Model v View. Controller c giao nhim v nhn cc
yu cu t pha my khch. Mt yu cu c nhn t my khch c thc hin bi mt chc nng logic thch
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
5

hp t thnh phn Model v sau sinh ra cc kt qu cho ngi dng v c thnh phn View hin th.
ActionServlet, Action, ActionForm v struts-config.xml l cc phn ca Controller.
3. Cch to trang web trong Visual Studio 2008
3.1 Khi ng Visual Studio 2008 hoc Visual Web Developer 2008 (hnh 1)




















3.2 Cch to d n mi
Chn File New Project (Ctrl+Shitf+N) hoc New Web Site (Shift+Alt+N) (Hnh 2)











Hnh 1: Visual Web Developer 2008
Hnh 2: To d n mi
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
6

Nu chn New Project xut hin hp hi thoi New Project sau (hnh 3):















Trong Project Type:
Visual Basic Web nu chn Visual Basic l ngn ng vit ng dng.
Visual C# Web nu chn C# l ngn ng vit ng dng.
Trong Templates chn ASP.NET Web Application,.
Trong Name t tn cho Project, tn do ta t.
Trong Location l th mc cha Project.
Nu chn New Web Site xut hin hp hi thoi New Project sau (hnh 4):

Hnh 3
Hnh 4
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
7

Trong Languge:
Visual Basic Web nu chn Visual Basic l ngn ng vit ng dng.
Visual C# Web nu chn C# l ngn ng vit ng dng.
Trong Templates chn ASP.NET Web Application.
Trong Location l chn Sysem File v Chn tn v th mc cha Project.
3.3 V d 1












V d to mt d n c tn l Vi_du_1, t ti a D, chn ngn ng chn l C# (hnh 5) sau bm
OK. Sau chng ta c file Default.aspx (hnh 6).















Hnh 5
Hnh 6
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
8

Trong v d u tin ny chng ta son mt on m sau trong Default.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<font face="verdana" color="red" size="20">Cho mng bn n vi ASP.NET
3.5 </font>
</div>
</form>
</body>
</html>
chy chy web ny di dng Deburg chng ta chn Deburg Start Deburgging hoc bm phm
F5 (hnh 7).










Kt qu khi chy Vi_du_1 (hnh 8)
Hnh 7
Hnh 8
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
9


4. Gii thiu v s kin (Event) trong ASP.NET
4.1 Mt s tp c bn trong ASP.NET











Khi chng ta xy dng xong mt ng dng Web:
Phn giao din ca ng dng nm trong cc tp .aspx v html.
Tt c cc tp m ngun (C#, VB.NET hoc ngn ng .NET) s c bin dch thnh tp .DLL v
nm trong th mc /Bin.
4.2 Chu k sng ca trang web trong ASP.NET (ASP.NET Page Life Cycle)
Chu k sng c bt u khi trnh duyt yu cu mt trang web gi l Session.
Chu k sng vn tip tc nu:
- Session ang hot ng.
- Ngi s dng tng tc vi giao din web cho n khi kch hot mt s kin.
- D liu ca trang (View State) wed c gi v cho Server.
- Server nhn c View State v tr li yu cu t View State.
Chu k sng kt thc khi:
- Ngi dng kt thc trnh duyt.
- Session kt thc (timeout).
4.3 Mt s cc s kin ca trang web (Page Event)
S KIN MIU T
Pre_Init
Kim tra thuc tnh IsPostBack khi ln u tin trang web ang c s l.
To mi hoc to mi li cc Control ng (Dynamic Control).
Thit lp trang ch (Master page), thuc tnh Theme.
c v thit lp gi tr cho thuc tnh Profile.
Init
Lm ni (Raised) sau khi cc Control c khi ng v cc Skin c
ng dng. Chng ta s dng s kin ny c hoc khi to cc thuc tnh ca
Control.
TP MIU T
*.aspx
Tp ny cha ton b giao din ngi dng, cc ty chn, cc on
code ng dng. y l mt trong nhng trang web u tin c bt
u khi ngi s dng duyt web.
*.cs Tp ny cha cc m ngun ca C#
web.config
Tp tin dng XML cha cu hnh cho ng dng ASP.NET. N bao
gm cc cu hnh v an ninh, qun l trng thi, qun l b nh
global.asax
Chng ta s dng tp tin ny khai bo cc bin ton cc v phn
ng vi cc s kin ton cc.
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
10

Load
S dng s kin ny thit lp thuc tnh cho Control, thit lp cc kt ni vi
C s d liu.
InitComplete
S dng s kin ny x l cc tc v c yu cu khi tt c cc khi to hon
thnh.
Unload Trang c gii phng khi b nh
Error Khi xy ra li trong trang.
DataBinding Server Control trn trang c gn vi ngun d liu
4.4 S kin ng dng (Event Application)
S KIN MIU T
Application_Start Ngi dng u tin duyt trang web.
Application_End Khi khng cn ngi dng no duyt trang web.
Application_Error Khi c li xy ra trong ng dng
Session_Start Khi ngi dng duyt mt trang web
Session_End Khi ngi dng ng trnh duyt hoc Session kt thc (time out)

V d sau m s ngi truy cp v s ngi online
Chn Project Add New Item (hnh 9).














Trong Add New Item chn Global Application Class (hnh 10).





Hnh 9
Hnh 10
Microsoft Vietnam DPE team |Bi m u: Gii thiu tng quan v ASP.NET 3.5
11

Trong file Global.asax son on m sau:

<%@ Application Language="C#" %>
<%@ Import Namespace="System.IO" %>
<script runat="server">

void Application_Start(object sender, EventArgs e)
{
if (!File.Exists("D:\\Dem.txt"))
File.WriteAllText("D:\\Dem.txt", "0");
Application["SNTruyCap"] = int.Parse(File.ReadAllText("D:\\Dem.txt"));
}

void Application_End(object sender, EventArgs e)
{

}

void Application_Error(object sender, EventArgs e)
{

}

void Session_Start(object sender, EventArgs e)
{
if (Application["SNOnline"] == null)
Application["SNOnline"] = 1;
else
Application["SNOnline"] = (int)Application["SNOnline"] + 1;

Application["SNTruyCap"] = (int)Application["SNTruyCap"] + 1;
File.WriteAllText("D:\\Dem.txt", Application["SNTruyCap"].ToString());
}

void Session_End(object sender, EventArgs e)
{
Application["SNOnline"] = (int)Application["SNOnline"] - 1;
}

</script>

5. Ti liu tham kho
1. Visual Web Developer, URL: http://msdn.microsoft.com/en-us/library/ms178093.aspx
2. Microsoft ASP.NET, URL: http://www.asp.net/
3. Bill Evjen, Scott Hanselman, Devin Rader, Professional ASP.NET 3.5 In C# And VB

You might also like