Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 80 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
80
Dung lượng
1,26 MB
Nội dung
T Hc
Microsoft ASP.NET
Bn quyn ca:
www.vovisoft.com
Rào Trc
Hành trang vào Khóa Hc ASP.NET
Ta nên chun b sn mt s kin thc cn bn v lp trình hay phát trin mng khi bc vào khóa hc này thì tt hn, vì tuy
bn không cn phi bit v ASP c đin (classic ASP) nhng, nh chúng tôi đã trình bày trong phn FAQ trang Chào Mng
đu khóa hc, bn cn:
• tham kho các bài vit trong khóa
Hc Microsoft .NET ca thy Lê Ðc Hng đ làm quen vi .NET framework,
Visual Basic.NET, Visual Studio.NET. VB.NET s đc dùng làm ngôn ng mc đnh (default) trong các thí d, các
bài tp hay các d án ca khoá.
• bit tng quát v HTML (HyperText Markup Language) khi ta cn trình bày các trang web trên browser. Browser
đc dùng trong khoá này là IE6 (Internet Explorer Version 6).
• quen thuc vi các h điu hành mi hin nay (Operating System) nh Windows 2000 (Professional hay Server) hay
Windows XP (Home hay Professional), cng nh quen thuc cách qun lý các ng dng liên h nh Web Server
(Personal Web Server hay Internet Information Server - IIS) và các c s d liu (database) MS SQL Server 2000 -
xin tham kho các bài vit v
MCSE ca thy V Hu Tín, thy Tng Vinh Tài và lp MCSE.
• vài kin thc cn bn v XML liên quan đn vic chuyn thông tin t ch này qua ch khác. V XML, bn nên tham
kho các bài vit XML, K Thut Nng Ct trong Tng Lai ca thy Lê Ðc Hng và các bài t hc XML ca cô
Bch Trí
cng trên mng Vovisoft này).
Tht ra, ta đâu làm khó nhau chi nhng phi rào trc đón sau nh vy là vì con đng ta đi tìm hiu v ASP.NET hi lt lo
gp ghnh. Mt khi ta phát trin mng vi ASP.NET, ta phi vn dng tt c các ng dng liên h và kt hp mi th vào
nhau. Ðó cng là lý do ti sao khoá hc này ch nhm vào các lp trình viên đã có kinh nghim phát trin mng. Tuy vy,
chúng tôi s c gng trình bày mt cách đn s, ngn và gn khi đ cp đn các ng dng k trên trong các bài hc có liên
quan đn đ bn (nht là bn nào thích thú trong vic phát trin mng và mi làm quen vi ASP.NET) d dàng theo di và
tìm hiu v ASP.NET.
Nhu Liu (Software)
Nhu liu (phn mn hay software) ti thiu phi có đ hc khoá ASP.NET thành công:
• V h điu hành (Operating System): ta nên dùng Windows 2000 (Professional hay Server) hay Windows XP
(Home hay Professional). Lý do chính là các versions ca Windows này h tr Unicode và có th cài t do Internet
Information Server (IIS Version 5) h tr ASPX đ ta dùng cho ASP.NET vì IIS đc cung cp min phí trong các
h điu hành k trên.
• Ngoài ra, bn cn phi có .NET framework SDK (Software Development Kit) ti xung t mng Microsoft. Chúng
tôi s trình bày vic at3i xung đâu và công cuc b trí nh th nào bài hc s 1. Nu nh bn đã có và cài đt
Microsoft Visual Studio.Net (VS.NET) theo s hng dn các bài hc ca khóa Hc Microsoft .NET thì càng tt
na. Vì rãi rác trong các bài hc v ASP.NET, chúng tôi cng trình bày mt s thí d dùng VS.NET cho ASP.NET
mc dù tht ra ch cn có Notepad thôi đã cng d xài sut nm.
• Cui cùng, bn cn phi có và cài đt thành công mt c s d liu (Database) vng mnh tng ng vi OLE DB-
compliant database system nh SQL Server 2000 đ dùng lu tr nhng thông tin cn thit. Tuy nhiên, ta cng có
th dùng MS Access 2000 đ tm thi thay th SQL Server 2000 cho các thí d trong khoá phn nhiu trình bày các
ni và các kiu thu thp d liu hay thông tin xuyên qua SQL Server 2000.
Ti sao ta li quan tâm và phát trin mng vi ASP.NET
Ta phi công nhn mt điu là .NET Framework và các ng dng ca nó đã và đang to mt cuc cách mng k thut trong
công ngh Tin Hc (Information Technology), thay đi tn gc r các kiu mu lp trình hay phát trin và trin khai mng
trên th gii và do đó to mt vn hi mi đáp ng mi yêu cu khn thit cho các ngành ngh k thut và thng mi hin
nay cng nh vch mt hng đi vng chc và dài lâu cho tng lai Tin Hc. ASP.NET chính là mt trong nhng ng dng
quan trng nht đ phát trin và trin khai mng mt cách d dàng cha tng thy t xa đn nay. Tht vy, không phi là
chúng tôi khoái n đâu, hãy lng nghe th chính Microsoft đã nói v ASP.NET nh th nào:
'ASP.NET is a revolutionary programming frramework that enables the rapid development of powerful web
applications and services. Part of the Microsoft .NET Platform, it provides the easiest and most scalable way to
develop, deploy and run distributed web applications that can target any browser or any application.'
Có y chang nh vy hay không? hay là ch qung cáo theo kiu 'cao đn hn tán' mà thôi? Chúng ta hãy 'ngi xung
đây, hãy ngi xung đây' và ngi gn li vi nhau đ nhìn cho rõ nhng đc tính không tm thng ca ASP.NET nh sau:
Developer Productivity
Easy Programming Model:
ASP.NET giúp ta phát trin và trin khai các ng dng v mng trong mt thi gian k lc vì nó cung cp cho ta mt kiu
mu lp trình d dàng và gn gàng nht. Ngoài ra còn bãnh hn na, các trang ASP.NET làm vic vi mi browsers hin nay
nh Internet Explorer (IE), Netscape, Opera, AOL, mà không cn phi đi ti đi lui các ngun mã rt vt vã nh trc.
Flexible Language Options:
Không nh ASP kiu c đin ch gii hn vi VBScripts and JScripts, ASP.NET ym tr trên 25 .NET ngôn ng lp trình (d
nhiên ngoài các ngôn ng mi thit lp đã cài sn ym tr .NET framework nh là VB.NET, C# và JScript.NET còn có
MC++.NET, Smalltalk.NET, COBOL.NET, Eiffel.NET, Perl.NET, Component Pascal.NET, Mercury.NET, Oberon.NET,
Python.NET, vân vân và vân vân không k xit).
Great Tool Support:
Mc dù ta có th ch cn dùng ti Notepad đ trin khai các trang ASP.NET nhng Visual Studio.NET giúp nng sut trin
khai mng thêm phn hiu qu ví ta có th quan sát các k hoch ca ta d dàng hn khi phát ha (design) các thành phn ca
ASP.NET bng hình nh vi ASP.NET Web Forms hay Services theo phng pháp 'drag-drop-doubleclick' quen thuc ca
nn Windows. Thêm na, li còn ym tr ta trong vic phát hin và loi b nhng li sai mt cách rt thun li trong khi phát
trin các ng dng v mng (support for debugging and deploying ASP.NET Web applications).
Ðây là trang đu tiên khi dùng Visual Studio.NET:
Rich Class Framework:
Nh nn tng vng vàng và tài nguyên phong phú ca .NET Framework vi hn 5000 classes bao gm đ th mi chuyn
trên tri di đt nh XML, data access, file upload, regular expressions, transactions, message queuing, SMTP mail, vân vân
và vân vân nên vic thit k các đc tính trong mt ng dng tr nên nh nhàng và thoi mái hn xa rt nhiu.
Improved Performance and Scalability
Compile execution:
ASP.NET không nhng chy nhanh hn ASP c đin gp 5 ln mà còn có th duy trì kiu mu cp nht gi là kiu mu 'just
hit save', ngha là ASP.NET t đng dò tìm mi s thay đi và compile files khi cn thit cng nh lu tr kt qu compile
đó đ cung ng dch v cho nhng yêu cu tip theo sau, nh vy ng dng ca bn luôn luôn cp nht hóa và chy nhanh
hn c nga Nhâm Ng 2002.
Rich output caching:
ASP.NET có kh nng lu tr mt kt qu chung trong phân b memory ca trang đ gi gii đáp cho cùng mt yêu cu t
nhiu khách hàng khác nhau và nh đó không nhng tit kim đc s lp đi lp li công tác thi hành ca mt trang web mà
còn gia tng hiu xut mt cách ngon mc do gii hn ti đa vic cht vn các c s d liu (eliminating the need to query
the database on every request) rt tn nhiu thi gian.
.NET Outperforms J2EE:
Trong vic đi đu vi nhau v hiu xut (performance) và scalability vi cùng mt ng dng phát trin gia Sun's Java Pet
Store J2EE và ASP.NET thì ASP.NET không nhng nhanh vt tri hn J2EE đn 28 ln (khoãng 2700%), ngun mã li ít
hn nhiu (khoãng 1/4 ngun mã ca J2EE) mà còn dùng b x lý (processor) ch khoãng 1/6 ln so vi vic s dng
processor ca J2EE. Nu mun tìm hiu thêm, bn có th truy tìm d dàng nhng trang so sánh nh vy khi ni vào Internet
đ 'search' v hiu xut ca c hai sn phm.
Enhanced Reliability
Memory Leak, DeadLock và Crash protection:
ASP.NET cng có kh nng t đng dò tìm và phc hi (detects and recovers) nhng tr ngi nghiêm trng nh deadlocks
hay b nh (memory) b r đ bo đm ng dng ca bn luôn luôn sn sàng khi dùng mà không làm cn tr vic cung ng
dch v cn thit thng l.
Easy Deployment
Simple application deployment:
ASP.NET đn gin hóa vic trin khai ng dng mng, do đó bin vic trin khai toàn b ng dng tr nên d dàng và thun
li hn hn trc kia vì bây gi ta ch cn sao (vi XCOPY) và lu tr Server ch không cn phi chy chng trình
'regsrv32' đ đng ký bt c thành phn nào c, và thêm na, khi cn lu tr nhng yu t ph cn thit cho vic thit lp hay
b trí các ng dng, ta ch cn lu gi nó vào trong mt h s di dng XML là đ.
Dynamic update of running application:
ASP.NET cho phép ta t đng cp nht hóa (update) các thành phn đã compiled (compiled components) mà không cn phi
khi đng li (re-start) các Web Server.
Easy Migration Path:
Ta không cn phi du nhp nhng ng dng đc phát trin và trin khai bng ASP c đin hin có ca bn vào ASP.NET vì
ASP.NET có th chy song song vi cu chin binh ASP cùng mt Internet Information Server (IIS) trong nn Windows
2000 hay nn Windows XP. Các ng dng c vn tip tc chy ht sc thoi mái vi ASP.DLL trong khi ASP.NET engine s
x lý các ng dng mi. Ngoài ra, ASP.NET còn cho phép bn dùng li nhng thành phn thng mi hin nay kiu COM c
đin trong các ng dng ca nó.
XML Web Services:
Dch v tân k v mng vi XML cng cho phép bn truyn đt (communicate) và chia x (share) các d kin (data) xuyên
qua mng Internet d dàng ti các SOAP client mà không h phân bit đi x các h điu hành hay các ngôn ng lp trình
khác nhau (regardless of OS or programming language). Nh đó, ta không cn phi hc thêm hay đào sâu các kin thc v
Networking, XML hay SOAP,
Mobile Web Service Support:
Thêm na, ASP.NET Mobile Controls còn giúp ta phát trin và trin khai mng nhm vào th trng nhng cell phone hay
PDA vi gn hn 80 Mobile Web Services đuc cung cp trong .NET framework. Bn ch cn lp trình cho ng dng ca
bn nh thng l ri phó mc cho Mobile Controls đó t đng phát sinh ra nhng ngun mã nh WAP/WML, HTML hay
iMode thích hp vi tng loi thit b (device) riêng bit.
Thôi, đn đây ta tm ngng 'đánh bóng' nhng gì đã sáng chói đó mà hít mt hi tht dài, bc mt bc khi đu cho
cuc hành trình tìm hiu và thc hành v ASP.NET. Vy xin mi bn hãy sang sông, à không, sang trang vi bài s 1
'Làm Quen vi ASP.NET'
Bài 01
Làm Quen vi ASP.NET
Hãy ngi xung đây, hãy ngi xung đây, xa cn bun phin.
Du bit chia phôi, nhng trong cuc đi, vn có đôi ta.
Hãy ngi xung đây - Lê Uyên Phng
Trong trang này, ta s tham kho mt s vn đ nh sau:
• ASP.NET là gì?
• Phng pháp làm vic trong mng
• S lc v .NET Framework
• B trí và cài đt ASP.NET
• To trang ASP.NET đu tiên
Chc hn ta có dp đc nghe Nguyn Ngc Ngn k vi K Duyên rng ông đã b công gn 2, 3 nm tri đng đng đ
nghiên cu rt là cc kh mi khám phá ra mt chân lý nh sau: 'Thà là ly v va tr va đp còn hn là ly v va già
va xu'. Ta thì không cn phi tn nhiu nm tháng đn th đ bit đc ASP.NET va tr va đp hn là ASP hoc nhng
phng pháp phát trin mng c đin khác nhng dù có bit rõ ASP.NET va tr va đp (Microsoft chính thc khai trng
sn phm .NET Framework và MS Visual studio.NET vào ngày 13 tháng Hai nm 2002, tuy nhiên rt nhiu phiên bn Beta2
đã đc ph bin khp th gii gia nm 2001) nhng my ai bit đc ASP.NET là gì và dung nhan mùa h ra làm sao?
Vy ta 'hãy ngi xung đây' đ bt đu làm quen vi ASP.NET.
ASP.NET - EM LÀ AI?
Trc ht, h tên ca ASP.NET là Active Server Pages .NET (.NET đây là .NET framework). Nói đn gin, ngn và gn thì
ASP.NET là mt công ngh có tính cách mng dùng đ phát trin các ng dng v mng hin nay cng nh trong tng lai
(ASP.NET is a revolutionary technology for developing web applications). Bn lu ý ch ASP.NET là mt phng pháp t
chc hay khung t chc (framework) đ thit lp các ng dng ht sc hùng mnh cho mng da trên CLR (Common
Language Runtime) ch không phi là mt ngôn ng lp trình. Ngôn ng lp trình đc dùng đ din đt ASP.NET trong
khóa này là VB.NET (Visual Basic .NET) và VB.NET ch là mt trong 25 ngôn ng .NET hin nay đc dùng đ phát trin
các trang ASP.NET mà thôi.
Tuy mang h tên gn ging nh ASP c đin nhng ASP.NET không phi là ASP. Ta s lc đây vài khác bit gia
ASP.NET và ASP đ bn có khái nim tng quát và s trình bày thêm chi tit khi đào sâu vào tng đim đc trng (features)
ca ASP.NET tng bài hc mt.
KHÁC BIT GIA ASP.NET VÀ ASP
ASP.NET đc phác tho (re-design) li t s không, nó đc thay đi tn gc r và phát trin (develop) phù hp vi yêu cu
hin nay cng nh vch mt hng đi vng chc cho tng lai Tin Hc. Lý do chính là Microsoft đã quá chán nãn trong vic
thêm tht và kt hp các công dng mi vào các kiu mu lp trình hay thit k mng theo kiu c đin nên Microsoft ngh
rng tt nht là làm li mt kiu mu hoàn toàn mi thay vì vá víu ch này ch n vào ASP. Ðó là cha k đn nhiu phát
minh mi ra đi sau này da trên các khái nim mi m theo xu hng phát trin hin nay ca công ngh Tin Hc
(Information Technology) cn đc đa vào kiu mu phát trin mi đó. Nh vy, ta mi có th nói khi khi ASP.NET
không phi là ASP. Tht vy , ASP.NET cung cp mt phng pháp hoàn toàn khác bit vi phng pháp ca ASP.
Lu ý, mc dù ASP.NET và ASP khác bit nhau nhng chúng có th hot đng vui v hài hoà vi nhau trong Web Server ca
bn (operate side-by-side). Do đó, khi bn cài ASP.NET engine, bn không cn lp trình li các ng dng hin có di dng
ASP ca bn tuy rng, nu mun, bn có th làm điu đó rt d dàng.
S THAY ÐI C BN
ASP đã và đang thi hành s mng đc giao cho nó đ phát trin mng mt cách tt đp nh vy thì ti sao ta cn phi đi mi hoàn
toàn? Lý do đn gin là ASP không còn đáp ng đ nhu cu hin nay trong lãnh vc phát trin mng ca công ngh Tin Hc. ASP
đc thit k riêng bit và nm tng phiá trên h điu hành Windows và Internet Information Server, do đó các công dng
ca nó ht sc ri rt và gii hn.
Trong khi đó, ASP.NET là mt c cu trong các c cu ca h điu hành Windows di dng nn hay khung .NET (.NET
framework), nh vy ASP.NET không nhng có th dùng các object ca các ng dng c mà còn có th x dng tt c mi
tài nguyên mà Windows có, d dàng nh n cm tm bì sn ch vy.
Ta có th tóm tc đi khái s thay đi nh sau:
• Tp tin ca ASP.NET (ASP.NET file) có extension là .ASPX, còn tp tin ca ASP là .ASP.
• Tp tin ca ASP.NET (ASP.NET file) đc phân tích ng pháp (parsed) bi XSPISAPI.DLL, còn tp tin ca ASP
đc phân tích bi ASP.DLL.
• ASP.NET là kiu mu lp trình phát đng bng s kin (event driven), còn các trang ASP đc thi hành theo th t
tun t t trên xung di.
• ASP.NET x dng trình biên dch (compiled code) nên rt nhanh, còn ASP dùng trình thông dch (interpreted code)
do đó hiu sut và tc đ phát trin cng thua sút hn.
• ASP.NET ym tr gn 25 ngôn ng lp trình mi vi .NET và chy trong môi trng biên dch (compiled
environment), còn ASP ch chp nhn VBScript và JavaScript nên ASP ch là mt scripted language trong môi
trng thông dch(in the interpreter environment). Không nhng vy, ASP.NET còn kt hp nhun nhuyn vi XML
(Extensible Markup Language) đ chuyn vn các thông tin (information) qua mng.
• ASP.NET ym tr tt c các browser và quan trng hn na là ym tr các thit b lu đng (mobile devices). Chính
các thit b lu đng, mà mi ngày càng ph bin, đã khin vic dùng ASP trong vic phát trin mng nhm vn ti
th trng mi đó tr nên vô cùng khó khn.
PHNG PHÁP LÀM VIC TRONG MNG
Internet đã và đang đem li nhiu điu k diu cho đi sng ca ta. Tht vy, nó có kh nng 'ni vòng tay ln' mi ngi trên
th gii tng chng nh cách bit xa xôi ngàn dm bng dng li gn trong gang tt, k thut này đã mang li bit bao nhiêu
điu mi m đn cho ta t nh e-mail, instant messaging hay World Wide Web (hay gi tc là WWW hay Web hay mng)
làm vic thông tin liên lc tr nên d dàng, do đó con ngi cùng đi sng cng thay đi nhanh chóng nh 'cun theo chiu
gió'.
T khi đu, vic phát trin 1 mng ht sc là đn gin, ch cn mt hay vài trang trong đó ta mun chia s bt c thông tin gì
ta thích là chc chn cng có ngi ghé qua thm ving. Tuy vy, các trang trong thi k khi nguyên ca mng rt th đng,
nó không cho phép khách vãng lai trao đi thông tin mt cách h tng (interact) vi ta, ngha là thm thì có thm nhng
không hi hay chia s đc gì vi nhau.
Dn dà, mng phát trin thêm nhiu công dng khác nhau gn thêm vào nào là hình nh, nào là tables, forms và cui cùng có
th trao đi thông tin hay tâm tình vi khách vãng lai qua các ng dng nh guestbook, thm dò ý kin (user, customer hoc
là client poll) hay các din đàn vi mi tit mc trên tri di đt. Sau đó, các chuyên gia phát trin mng li thêm tht và
trang đim cho mng ca mình càng lúc càng đc sc hn, cùng muôn mu muôn v.
Tt c nhng c gng đó đã đem tác đng h tng đn gia Web Master (hay nhóm qun lý mng) và khách vãng lai nh ta
đc chng kin hin nay, tuy vy vn còn thiu hn 1 phn quan trng nht là phn ni dung c đng tu bin (dynamic
content). Do đó vai trò ca phng pháp dch v (server processing) đc phát trin đ có th trình bày ni dung đc lu tr
trong các c s d liu (database) tu theo yêu cu riêng bit cho tng cá nhân.
KIU MU RESQUEST/RESPONSE
Kiu mu này chính là toàn b phng pháp làm vic theo kiu Client /Server hin dùng vi ASP.
Client/Server - Mt trng hp đn gin nht là s trao đi thông tin gia 2 máy vi tính đ hoàn thành 1 công vic đc đnh
trc, trong đó máy Server cung cp dch v theo yêu cu ca 1 máy khách hành (Client PC).
Thng thng, Server là máy vi tính lu tr thông tin v mng trong đó có hình nh, video, nhng trang HTML hay ASP. Client là
máy vi tính đc dùng đ lt mng. Mt cách tng quát phng pháp này gm có 4 bc c bn sau:
1. Client (thông qua Internet Browser) xác đnh v trí ca Web Server qua 1 ni URL (Universal Resource Locator) t nh
www.vovisoft.com
2. Client s yêu cu đc tham kho 1 trang trong mng đó và thng là trang ch (home page) t nh index.htm hay
default.htm
3. Server đáp ng bng cách hoàn tr h s mà Client đã yêu cu.
4. Client nhn đc h s gi v và hin th (display) trong browser ca mình.
Lu ý, mt khi Client đã nhn đc h s ri, quá trình trao đi qua li đó kt thúc ngay tc khc. Sau đó, Server và Client tr thành
'ngòi xa l', coi nh là cha tng bao gi gp nhau (stateless model), ta gi là kiu 'làm ng'.
KIU MU EVENT-DRIVEN
Kiu mu event-driven này dùng vi ASP.NET cng tng t nh là kiu mu event-driven mà ta vn thng dùng trong khi
lp trình các ng dng vi Visual Basic 6.
Trong kiu mu này, Server s không 'ngi chi xi nc' ch Client yêu cu tham kho 1 trang nào đó trong mng mà
Server đã b trí và k hoch sn trc tt c mi tình hung đ có th hành đng kp thi mi khi Client quyt đnh làm 1 điu
gì đó. Ta gi đó là 'response to your action', còn trong kiu mu trc là 'response to your request', nh vy ASP.NET có th
phát hin ra các hành đng ca Client đ phn ng cho thích hp.
Ðc ti đây chc bn s hi li ngay rng: 'a, nhng mà làm sao mt Server nào đó, có th tn đâu đâu bên kia đa cu, li
bit đc là ta đang gõ vài mu t trong mt hp ch hay là đang nhp mi chut (click) vào button trong phn Guestbook
hay Forum ca Vovisoft đ gi đi mt thông đip làm quen vi Vovisoft?'.
À, s d Server có th làm đc 'chuyn khó tin nhng có thit đó' là da vào tin trình x lý linh đng Client (gi là
clever client-side processing) đ thc hin kiu mu event-driven này ca mình. Tin trình x lý Client xãy ra khi ta b trí
ngun mã thích hp mà Client có th hiu đc trong các trang ta gi v cho Client. Lu ý là mc dù các trang mng (web
page) ta đu cha Server nhng ngun mã li có th đc thc hin và x lý, hoc Server hoc Client (Server-Side
processing và Client-Side processing) tu theo cách ta b trí. Tht vy, ASP.NET không th nào bit đc chuyn gì s xãy ra
máy vi tính ca bn (Client PC) nhng nh vào tin trình x lý linh đng Client mà Server có th tin hành kiu mu phát
trin mng mi theo phng pháp event-driven.
Nh là ta có th chy ngun mã 2 ch khác nhau: hoc là chy Server (gi là Server-side) hoc là chy Client (Client-
side) và các ngun mã 2 ch này hoàn toàn khác bit, không có tác đng h tng vi nhau (no interact with each other).
Ðiu đó có ngha là máy Client s chu trách nhim thi hành các ngun mã đc lp trình dành cho mình cng nh máy
Server ch chy các ngun mã dành cho Server. Thông tin hay ni dung cn thit Server s đc chuyn sang dng HTML
đn gin (plain HTML) trc khi gi đn cho Client, thng thì ngun mã dành cho Client cng đc chuyn đi di dng
'plain text command' đ thc hin các hiu ng nng đng (dynamic effect) máy Client, t nh thay đi hình nh (image
rollover) hay hin th mt thông đip (message box).
ASP.NET s dùng các ngôn ng mi có trình biên dch (compiled languages) nh C# hay VB.NET đ son các ngun mã
trong các trang Web Server.
S LC V .NET FRAMEWORK
Mi chc nng ASP.NET có đc hoàn toàn da vào .NET framework, do đó có ch .NET trong ASP.NET. Ta cn phi hiu
thu đáo kin trúc h tng ca .NET framework đ dùng ASP.NET mt cách hiu qu, trong đó quan trng nht là
CLR và
.NET Framework Class.
CLR (COMMON LANGUAGE RUNTIME)
CLR là môi trng đc dùng đ qun lý s thi hành các ngun mã (manage the execution of code) mà ta đã son ra và biên
dch (write and compile code) trong các ng dng. Tuy nhiên khi biên dch ngun mã, ta li biên dch chúng ra thành mt
ngôn ng trung gian gi là
Microsoft Intermediate Language (MSIL). Chính MSIL trung gian này là ngôn ng chung cho
tt c các ngôn ng .NET hin có, do đó chc bn cng đoán ra là ASP.NET cng đc biên dch (compile) ra MSIL nh mi
ai khác. Trong khi biên dch nh vy, các ng dng cng sn xut ra nhng thông tin cn thit đ t qung cáo chính mình,
ta gi nhng thông tin này là metadata. Ðn khi ta chy mt ng dng, CLR s tip qun (take-over) và li biên dch
(compile) ngun mã mt ln na ra thành ngôn ng gc (native language) ca máy vi tính trc khi thi hành nhng công tác
đã đc b trí trong ngun mã đó. Ta có th cm thy nhng vic bn rn sau hu trng đó khi phi ch đi 1 khoãng thi
gian cn thit đ CLR chm dt nhim v ca nó khi ln đu phi biên dch (compile) và hin th 1 trang Web, nhng ri mi
chuyn s xuôi chèo mát mái, cui cùng là ta có mt trình biên dch (compiled code) đ x dng rt hiu qu.
.NET FRAMEWORK CLASSES
Ðiu quan trng nht mà ta cn phi nh là mi th trong .NET đu là object, t nh các trang ASP.NET, các hp thông đip
(message box) hay là nút bm (button), tt c đu là object c. Các object đó đc t chc li thành tng nhóm riêng bit nh
trong mt th vin đ ta d dàng x dng. Ta gi các nhóm nh vy là
namespaces, và ta s dùng nhng namespace này đ
gi hay nhp (import) các class cn thit cho ng dng ca mình.
đây, ta ch s lc mt chút v .NET framework mà thôi, bn có th tham kho đy đ chi tit v .NET framework các
bài vit ca
thy Lê Ðc Hng trong khóa Hc .NET Framework và VB.NET
CÀI ÐT ASP.NET
Ð chy trang ASP.NET, trc ht ta cn phi cài đt thành công:
• Internet Information Server (IIS) và b trí Virtual Directory dùng trong khóa T Hc ASP.NET ca Vovisoft.
• MS Visual Studio.NET - trong trng hp này thì MS Visual Studio.NET đã cài sn .NET Framework SDK cho ta dùng
vi ASP.NET hoc là MicrosoftASP.NET Web Matrix (chi tit đc trình bày bài Gii Thiu V Web Matrix).
• .NET Framework Software Development Kit (SDK) - nu ta không có MS Visual Studio.NET, ta có th ti .NET
Framework Software Development Kit (SDK) xung t do t mng
www.microsoft.com/NET , vi SDK, ta ch có th
dùng Notepad hoc mt Text Editor nào ta thích đ phát trin trang ASP.NET mà thôi.
Nh là ASP.NET là k thut phát trin mng phiá Server, do đó ta phi cn có Internet Information Server (hay thng đc gi
đn gin hn là Web Server) đ son (phát trin hay lp trình) các trang v mng cho khách vãng lai ghé thm cng nh tham kho
các thông tin liên h. Nhng khác vi các trang ASP c đin, Web Server s không hiu các trang ASP.NET nu nh ta quên hay b
sót không cài .NET Framework SDK hoc không cài MS Visual Studio.NET, chính nh .NET Framework SDK mà ta có đy đ
các công dng và các object hay classes cn thit cho các trang ASP.NET ca ta.
CÀI INTERNET INFORMATION SERVER (IIS)
Internet Information Server (IIS) Version 5.0 là mt sn phm 'cho không biu không' ca Microsoft khi ta mua MS Windows
2000 Professional hay MS Windows XP Professional. IIS chuyên tr v Web Server, qua đó ta có th cung cp các dch v nói chung
v mng cho khách vãng lai, mà dch v v mng thì thiên hình vn trng, nh xíu nh t cây kim si ch cho đn v đi nh phi
thuyn, gii Ngân Hà hay v tr, đu có th đc b trí đy đ thông tin hay các ng dng liên h cn thit đ đáp ng nhu cu ca
khách vãng lai.
1. Ð cài IIS Version 5.0 trong MS Windows XP Professional, ta bt đu chn:
• Start, Settings, Control Panel, Add/Remove Programs và nhp đn (click) Add/Remove Windows Components, xong chn
Internet Information Server nh sau:
2. Nu ta nhp đn nút <Details>, ta có th t do la chn thêm hay bt các thành phn trong IIS, t nh ta có th b trí thêm File
Transfer Protocol Service (FTP Server) đ qun lý mt cách hiu qu hn vic ti lên (upload) hay ti xung (download) các h s
(documents) hay tp tin (files).
3. Nhp nút <Next>, Windows XP Professional s thu thp các thông tin liên h và bt đu tin trình cài đt IIS. Ch trong vòng vài
phút là ta đã có mt Web Server ngon lành trong máy vi tính. Gi đây, bn đã tr thành mt Web Master 'bt đc d'. Xin chúc
mng tân Web Master, ít ra ta cng tr thành Web Master chính máy vi tính ca ta (Web Master ca local host).
4. Ð xác đnh vic cài thành công Web Server, ta có th th nh sau:
• M Browser ca bn, t nh Microsoft Internet Explorer và gõ hàng ch nh sau vào hp đa ch (Uniform Resource
Locator)
http://localhost hay http://cantho
cantho (Cn Th) trong trng hp này chính là tên máy vi tính ca tôi đó (Computer Name). Ta có th gi
localhost hay cantho tu ý.
• Sau khi ta nhp nút <Enter>, trang mc đnh (default page) ca IIS s hin th nh sau:
B TRÍ VIRTUAL DIRECTORY DÙNG TRONG KHÓA T HC ASP.NET CA
VOVISOFT
Trc khi ta có th to ra và b trí mt
virtual directory tên là VovisoftASPNET (hoc bt c tên nào bn thích) dùng trong khóa
T Hc ASP.NET này, ta phi làm mt s vic nh sau:
• To ra 1 sub folder Vovisoft ASPNET cho các bài tp (Exercises).
• Vào (access) bên trong Web Server đ kim tra hay qun lý các tài nguyên trong mng.
• B trí virtual directory VovisoftASPNET.
Chi tit các bc theo th t nh sau:
1. To ra mt sub directory có tên là Vovisoft ASPNET cu trúc drive D nh sau: D:\Net\Vovisoft ASPNET, đ ý là có mt ch
trng gia 2 ch Vovisoft và ASPNET. Tuy vy, nu bn nhuyn v IIS, bn có th đt tên tùy thích và không nht thit phi theo y
chang kiu mu này, nhng bn phi hiu vic bn làm đ b trí mt virtual directory thích hp dùng thc hành các bài tp trong
khóa sao cho thành công.
2. Có nhiu phng pháp vào (access) bên trong Web Server trc khi b trí virtual directory, ta có th dùng
MMC (Microsoft
Management Console)
đ cng thêm IIS snap-in vào console hoc ta có th chy IIS bng cách chn: Start, Programs,
Administartive Tools, Internet Information Service
.
Phng pháp dùng MMC là phng pháp đc các
MCP (Microsoft Certified Professional) hay MCSE (Microsoft Certified
System Engineer)
a thích hn vì tính cách linh đng mm do thích hp cho vic qun lý các ngun tài nguyên khác nhau trong
mng.
Di đây là hình đc trng cho vic dùng MMC:
[...]... ây' trong bài tham kh o v ph liên h nh sau: ng pháp xây d ng trang ASP.NET (hay g i là Web Form) và m t s v n Phân tích mã trang ASP.NET u tiên Xây d ng m t trang ASP.NET n gi n Vài nh n xét khi dùng ASP.NET và HTML PHÂN TÍCH MÃ TRANG ASP.NET Ð U TIÊN Ta th xem l i ngu n mã Bài t p 2 c a trang ASP.NET u tiên trong Bài 01 'Làm Quen V i ASP.NET' : sub Page_Load(obj... trang ASP.NET v i Web Matrix S L C V WEB MATRIX Tr c khi mang tên cúng c m nh hi n nay, Microsoft ASP.NET Web Matrix Project (g i t t là Web Matrix) kh i u v i tên Web Studio, chuy n sang tên Mongoose, Project Saturn, Tahiti Project và cu i cùng là Microsoft ASP.NET Web Matrix Tên Web Matrix c ch n mang tính ch t sáng t o và thi t l p c m i liên h trong c ng ng các Chuyên Gia hay K S Tin H c v ASP.NET. .. n th trang ASP.NET u tiên này v i IE Client Browser và gõ hàng ch d i ây vào h p a ch (Address): http://cantho/VovisoftASPNET/Bai01/np-welcome/np-welcome.aspx r i nh p vào nút Ta s có 1 trang ASP.NET v i hàng ch Welcome to Khóa T H c ASP.NET - Vovisoft nh sau: Tóm t t Trong bài h c này, ta th t s làm quen v i ASP.NET qua vi c tìm hi u các ph ng pháp làm vi c c a m ng trong ph m vi ASP.NET Thêm... Framework ã nêu T O TRANG ASP.NET Ð U TIÊN M c d u trang ASP.NET thu n túy ch ch a ng ch và ch (pure text) nh trang v HTML nh ng âu ai c m ta dùng MS Visual Studio.NET so n các trang ASP.NET và qua ó x d ng giao di n b ng hình (Graphic User Interface - GUI) vi c b trí hay phát tri n thêm ph n d dàng và linh ng L u ý là ph n n i thêm (extension) trang ASP.NET s mang tên aspx ASP.NET u tiên b ng 2 ph... các y u t HTML mà thôi ASP.NET n m v ng i u ó, cho nên m i l n ASP.NET mu n g i t i Brower nh ng gì, nó u d ch ra hay bi n i ra d ng HTML Không nh ng v y, ASP.NET còn khéo léo v n d ng HTML ngây th (nh ng d th ng) ó còn thi hành nh ng ti n trình x lý c bi t (mà ta s tham kh o nh ng bài h c k ) cho ASP.NET phía Server mà hoàn toàn không hay, không bi t gì h t XÂY D NG M T TRANG ASP.NET Ð N GI N Bài T... tên aspx ASP.NET u tiên b ng 2 ph ng pháp nh sau: Dùng MS Visual Studio.NET t o trang ASP.NET Dùng Notepad t o trang ASP.NET u tiên Bài t p 1: Dùng MS Visual Studio.NET phân bi t v i asp trong ASP c i n Ta s t o trang u tiên t o trang ASP.NET u tiên M c ích: Hi n th hàng ch "Welcome to Khóa T H c ASP.NET" trong trang ASP.NET này c a Vovisoft Các b u tiên chào m ng các b n n v i khóa h c c th t nh sau:... quen t t phân bi t mã c a ASP.NET v i mã c a HTML sub Page_Load(obj as object, e as eventargs) lblWelcome.Text = "Welcome to Khóa T H c ASP.NET - Vovisoft" end sub Ph n mã này t o ra m t Procedure có tên là Page_Load m c nh (default) cho các trang ASP.NET gi ng nh Form_Load trong vi c l p trình dùng ngôn ng Visual Basic v i s c (event) Load, khi trang u tiên này c a ra trình bày, ASP.NET s g n hàng ch... ta ph i làm gì c Sau khi trang web c biên d ch, ASP.NET b t u ti n trình x lý t t c ngu n mã k c các s c (events) t nh ta gõ vài ch trong h p ch (text box) ho c nh p (click) m t nút nào ó thì b máy ASP.NET (ASP.NET engine) s nghiên c u, kh o sát bi n c ó quy t nh cách ph n ng và thi hành áp ng l i bi n c theo k ho ch l p trình ã quy nh tr c Ti p theo, ASP.NET bi n i t t c các Server Controls trong trang... hi n th hàng ch "Welcome to Khóa T H c ASP.NET - Vovisoft" nh thí d ang phân tích trên (ta s th y HTML element này khi quan sát ngu n mã b ng cách ch n View, Source lúc trang ASP.NET c a Bài 01 - Bài T p 2) hi n th trong Client Browser ASP.NET c ng nh giá nh ng ngu n mã c a Code Render Block (n u có) và c ng s n xu t ra nh ng y u t HTML t ng ng Cu i cùng, ASP.NET s g i k t qu chung cu c d i d ng... Còn 1 ph ng pháp n a mà tôi r t thích vì tính cách c ng ng c a nó là MS ASP.NET Web Matrix Ph ng pháp này s trình bày bài s 3 Trong Bài s 2 'Xây D ng Trang ASP.NET' , ta s tham kh o chi ti t vi c xây d ng m t trang ASP.NET nh th nào c ng nh sâu v vi c phân tích cú pháp và các m nh l nh (commands ho c keywords) dùng trong các trang ASP.NET Download Source Code Ngu n mã bài t p 1 Ngu n mã bài t p 2 Bài . nh sau:
• Tp tin ca ASP. NET (ASP. NET file) có extension là .ASPX, còn tp tin ca ASP là .ASP.
• Tp tin ca ASP. NET (ASP. NET file) đc phân tích. tr .NET framework nh là VB .NET, C# và JScript .NET còn có
MC++ .NET, Smalltalk .NET, COBOL .NET, Eiffel .NET, Perl .NET, Component Pascal .NET, Mercury .NET,