bai - gioi thieu asp.net.pptx

71
GIỚI THIỆU VỀ ASP.NET TRONG PHÁT TRIỂN WEB

Upload: jvinhit

Post on 14-Nov-2015

223 views

Category:

Documents


0 download

TRANSCRIPT

GII THIU V LP TRNH ASP.NET

GII THIU VASP.NET TRONG PHT TRIN WEBCc components Web Application

Cc components Web ApplicationWeb App l 1 loi ng dng client/server. Trong app, user ti 1 my client truy cp vo 1 app ti 1 my server. Trong 1 app th client v server c kt ni vi nhau thong qua Internet(WAN)/ Intranet(LAN)Trong 1 Web App, User lm vic thng qua 1 Web Browser ti 1 my client. Web browser cung cp cho user 1 giao din ng dng. (Internet Explore, Mozila )Cc components Web ApplicationApp ny chy trn my server bng cc iu khin (controls) ca web server software. i vi ASP.Net App, my server phi chy trn Web Server ca Microsoft, c gi l IIS (internet information service)Hu ht Web App, my server lu Database System trn Microsoft SQL hoc Microsoft Access.Cc components Web ApplicationGiao din m user s dng 1 web App bao gm tp hp cc Web pages c hin th trn Web Browser. Mi trang web page c gi l 1 web form cha HTML tagsWeb browser v web server trao i thng tin vi nhau bng cch s dng giao thc truyn d liu HTTP protocol.Static Web Pages (Web tnh)

Static Web Pages (Web tnh)Static web page l 1 ti liu HTML c dnh v ni dung/ hnh thc bt k thi im no khi user thc thi static web page .Cc HTML file c lu trn web server, khi 1 web browser yu cu 2 trang static web page th web server ly thng tin c lu trn a v gi tr li cho Broweser (.htm/.html)Web Broswer(trnh duyt Web )Web browser yu cu 1 trang t web server bng cch gi ti server 1 li yu cu c gi l HTTP Request. Http Request bao gm mi th: tn file HTML, a ch Internet ca c browser v web server.Users giao tip vi web browser bng nhiu cch, 1 trong cc cch l nh a ch ca Web page (URL) ln thanh a ch (Address)Web Broswer(trnh duyt Web )Web browser s p tr li Http Request bng cch gi cu tr li c gi l Http Response thng qua Web Browser.Dynamic Web Pages (Web ng)Dynamic Web Pages: bao gm nhiu trang m vo mi thi im hin th th ni dung lun thay i.Dynamic Web Pages: l Web Form nhng cha cc Server Controls nh: Tables, Textboxes, Buttons Dynamic Web Pages (Web ng)

NoteDynamic Web Pages (Web ng)Khi bt u Browser gi 1 Http request ti ti IIS gm a ch trang ang c s dng, cng vi cc thng tin m user nhp vo t form. Khi IIS nhn c yu cu th IIS s xc nh chc rng thng tin c gi t Dynamic Web. IIS li gi thng tin nhn c n ASP.Net, ASP.Net nhn qun l v thc thi yu cu nhn c.Dynamic Web Pages (Web ng) phn bit gia Static Web v Dynamic Web, IIS da vo loi file m n nhn c (.html/.htm hoc .aspx/ .asp)Thng tin t ASP.Net gi ti Server, sau khi x l xong Web server gi li thng tin cho Web Browser dng Http Response v hin th ni dung ln trang.Dynamic Web Pages (Web ng)Khi user click vo 1 control no bt u 1 Http request th qu trnh ny c gi l posting back to server, qu trnh ny lin quan ti thuc tnh postbackCc trng thi ca ASP.Net

Cc trng thi ca ASP.NetState (trng thi) l tnh trng hin hnh ca cc properties (thuc tnh), variables(bin), hay cc d liu c lu li trong 1 App ca 1 user. App phi lu tr ring cho mi user ang truy cp App vo ng thi im hin hnh.Cc trng thi ca ASP.NetC 2 i tng ASP.Net cho vic lu tr State:View state object: lu gi tr thuc tnh ca cc controls m ng dng thay i gia cc php thc thi ca cc App.Session state object: khi 1 user bt u 1 session th ASP.Net to 1 session state cha 1 sessionID. SessionID ny c gi t server ti browser v tr li server server kt hp vi browser bng session to. Session phi c khi to gi tr, c hiu lc cho 1 userCc trng thi ca ASP.NetApplication state object: khi 1 app bt u thc thi, th application state bt u khi to. Appliacation state phi c thit lp gi tr. Gi tr ny c hiu lc cho mi user trong app cho ti thi app k thc.GII THIU V ASP.NETASP.NET (Active Server Pages .NET) thc cht .NET l mt FrameworkASP.NET l mt "khung" lp trnh c xy dng trn b thc thi ngn ng chung (CLR - Common Language Runtime) v c s dng trn mt my ch phc v to ra cc ng dng Web mnh.GII THIU V ASP.NETNET Framework l mt tp hp nhng giao din lp trnh v l tm im ca nn tng .NET ca Microsoft. N cung cp c s h tng xy dng v chy cc dch v Web.

Operating system on services, desktops and devices .NET EnterpriseSevices .NET Framework.NET BuildingBlock ServicesVisual Studio.NetGII THIU V ASP.NETNet Framework bao gm mt s component hin hnh, bao gm:Cc ngn ng lp trnh chnh thc C#, VB.Net, , .NET l mt ngn ng kch bnMt s th vin lp c lin h vi nhau gi l Framework Class Library (FCL)GII THIU V ASP.NETData and XML Class (ADO.NET, SQL, XSLT, Xpath, XML,etc)Web services Web FormsWindows FormsWindows PlatformCommon Language Runtime(debug, exception, type checking, NT compilers)Framework Base Class (IO, string net, security, threading, text, reflection, collection, ect).NET FrameworkGII THIU V ASP.NETCommon Language Runtime (b thc thi ngn ng chung CLR) l trung tm im ca .NET Framework. y l mt "hm my" chy cc tnh nng ca .NET .NET Framework Class Library SupportThread SupportCOM MarshalerType CheckerException ManagerMSIL to Native CompilersCode ManagerGarbage CollectorClass LoaderSecurity EngineDebug EngineGII THIU V ASP.NETCc chc nng ca CLRKim sot mi giao din, cho php cc ngn ng c th tch hp vi nhau mt cch thng sut Cung cp v qun l b nh"gom rc" (garbage collection) Thc hin cc chc nng bo mt KIN TRC NG DNG WEB

Mt ng dng thng c chia thnh 3 lp phn bit chnh:Tng trnh din (Presentation Tier FrontEnd)Tng logic (Logical Tier Middleware)Tng d liu (Data Tier BackEnd)KIN TRC NG DNG WEBTng d liu (Data Tier)Tng ny m trch vic ly, lu tr v cp nht d liu, v vy c th nhn nhn tng ny th hin cho 1 c s d liu, v c th xem cc store procedures nh l 1 phn ca tng d liu.KIN TRC NG DNG WEBTng Logic (Bussiness Logical Tier)Mt vi kin trc chia tng logic ra lm 2 tng ph ring bit : tng nghip v v tng truy cp d liu (Business and Data Access Tiers). Mi tng ch c th tng tc c vi 1 tng lin k ngay st n. V d tng trnh din ch c th tng tc c vi tng Business m khng th vi tng DataAccess.KIN TRC NG DNG WEBTng Truy cp d liu (Data Access Tier): Hot ng nh giao din truy xut tng d liu. nh ngha cc phng thc ly d liu, lu tr d liu Tng Nghip v (Bussiness Tier)nh ngha cc phng thc tng hp d liu Khng truy nhp trc tip n c s d liu. Cc d liu u vo do tng truy cp d liu cung cp.KIN TRC NG DNG WEBTng trnh din (Presentation Tier)Ngi s dng giao tc vi tng nghip v thng qua tng trnh din. y c xem l mn hnh giao din ca chng trnh.PHNG PHP LM VIC TRN MNGKIU MU RESQUEST/RESPONSE: L ton b phng php lm vic theo kiu Client /Server hin dng vi ASP. Gm 4 bcClient (thng qua Internet Browser) xc nh v tr ca Web Server qua URL (Universal Resource Locator)Client s yu cu c tham kho 1 trang trong mng v thng l trang ch (home page) VD index.htm hay default.htmPHNG PHP LM VIC TRN MNGKIU MU RESQUEST/RESPONSEServer p ng bng cch hon tr h s m Client yu cu.Client nhn c h s gi v v hin th (display) trong browser ca mnh.Lu : Khi Client nhn c h s th qu trnh trao i s kt thc ngay lp tc. Sau , quan h Server v Client kt thc (stateless model)PHNG PHP LM VIC TRN MNGKIU MU EVENT-DRIVENKiu mu event-driven dng vi ASP.NET cng tng t nh l kiu mu event-driven m ta vn thng dng trong lp trnh cc ng dng vi Visual BasicTrong kiu mu ny, Server s khng ch client yu cu tham kho 1 trang no trong mng m Server b tr v k hoch sn trc tt c mi tnh hung c th p ng kp thi mi khi Client quyt nh lm 1 iu g . PHNG PHP LM VIC TRN MNGKIU MU EVENT-DRIVENV vy kiu mu event driven cn c gi l 'response to your action, server c th pht hin ra cc hnh ng ca Client phn ng cho thch hp.Kiu mu request/respon cn gi l 'response to your request', ch yu cu t pha clientGII THIU V WEBSERVERWebserver l mt my ch hoc mt phn mm trn my m n c th p li cc yu cu d liu t pha trnh duyt s dng giao thc HTTP cho php ngi dng c th truy cp file HTMLWebserver bin dch m lnh thnh trang HTML trc khi gi v cho clientC th dng IIS, hoc Tomcat tht lp webserverGII THIU V WEBSERVERInternet Information Services (IIS)Cho php thit lp webserver v qun l trang web. Phn mm ny cung cp cc ty chn nh hnh ni dung, qu trnh thc hin v in khin s truy cp trang web.GII THIU V WEBSERVERThit lp Webserver cho mt chng trnh ng dngBc 1: Start Setting Control PanelDouble Click Administrative ToolsDouble Click mc Internet Information Service GII THIU V WEBSERVERBc 2:Click phi vo Default Web Site, chn New, Virtual DirectoryNext

GII THIU V WEBSERVERBc 3:Nhp tn th mc o (cng chnh l tn ca website)Next

GII THIU V WEBSERVER

Chn th mc tht cha websiteGII THIU V WEBSERVERThay i thuc tnh ca website:Click phi trn tn ca websiteChn PropertiesThit lp trang mc nh:Trong ca s propertiesChn tab documentTrong khung enable default documentClick Add nhp trang mc nh ca website GII THIU V WEBSERVER

Cu trc ca ng dngTh mc App_DataL ni cha d liu ca ng dng, c s dng trong ASP.NET lu tr d liu cc b ca ng dngTh mc App_CodeApp_Code l ni cha source code cho lp tin ch v cc i tng nghip v (v d: cc file .cs, .vb, v .jsl)Cu trc ca ng dngTrong mt ng dng c bin dch ng, ASP.NET bin dch code trong th mc App_codeTt c cc tp tin bt k v tr no cng c th try xut vo th mc App_code. Cu trc ca ng dngTp tin Web.configL mt tp tin dng vn bn, da trn chun XML, c chia thnh nhiu phn khc nhau, gi l configuration section, cho php t thng tin cu hnh cho tng phn khc nhau ca ng dng nh Debugging, Profiling, Security, nh ngha cc bin ton cc trong tp tin XML Cu trc ca ng dngC nhiu thit lp quan trng c th lu tr trong tp tin cu hnh. Sau y l mt vi cu hnh c s dng thng xuyn nht, c lu tr trong tp tin Web.config.Database connections Session States Error Handling SecurityCu trc ca ng dngCu trc tp tin Web.config:

Cu trc ca ng dngS dng tag cha thuc tnh appSettings nh ngha bin ton cc trong file XML C php:

C php truy xut bin:

varName=ConfigurationManager.AppSettings["variableName "] ;Cu trc ca ng dngTp tin Cascading Style Sheet(.css)Cha cc nh dng ti liu hin th trn trnh duyt, cc nh dng c nh ngha trong tp tin ny nhm d qun l, cp nht v hiu chnh. S dng tag lin kt n tp tin .css

Cu trc ca ng dngTp tin JavaScript-Jscript(.js)Tp tin ny c s dng cho cc tin trnh pha client, s dng tag lin kt n tp tin .js.

Cch vit code trong chng trnhC 2 cch vit code trong chng trnh:Cch vit Code Inline Cch vit Code Behind Cch vit code trong chng trnhCch vit code inlineTrong cch vit Code inline, m vn c vit trong cc trang ASP.NET nhng khng trn ln vi HTML dnh cho phn ni dung, khi code client v code server cch nhau bi cp tag V d:

Cch vit code trong chng trnhXut d liu cho client: C php:

Cch vit code trong chng trnhCch vit Code Behind L hnh thc vit code trong mt tp tin khc. Khi trong tp tin .aspx cn phi khai bo r ni cha code vi c php sau:

Cch vit code trong chng trnhTrong : FileNameCode l tn tp tin code. Tp tin ny c phn m rng l .aspx.cs, .aspx, .vb, tu theo ngn ng s dng vit codeCch vit code trong chng trnh

Untitled Page


VD.aspxCch vit code trong chng trnhprotected void Button1_Click(object sender, EventArgs e) { Label1.Text = "Hello Word"; }VD.aspx.csCch vit code trong chng trnhC ch lm vic ca Code-Behind To cc file ring bit cho giao din ngi dng v lun lS dng dn hng @ Page lin kt 2 filePre-compileCC THNH PHN TRONG TRANGKhng gian tn (Namespaces)NameSpace l mt tp hp Logic cc nhm th vin c lin quan n nhau, gip ngi lp trnh d s dng v d tm kim.System l mt NameSpace gc ca framework.NET. N cha tt c cc kiu d liu nguyn thu (Primitives) v cc NameSpace khc.CC THNH PHN TRONG TRANGNamespaces c kin trc phn cp. Mun truy nhp vo mt chc nng hay mt i tng ca NameSpace cn phi bit c s phn cp ca NameSpace .Mi NameSpace c cha trong cc file gi l file Assembly, c phn m rng l .dll. NameSpace c th xem nh cc file th vin lin kt ng DLLCC THNH PHN TRONG TRANGMt s NAMESPACE v chc nngCollectionsCha cc i tng nh Danh sch, hng i v bng bmComponentModelCha cc lp cho php thay i cc control v component trong c lc chy v lc thit k.ConfigurationCung cp cc phng thc v i tng cho php truy cp n cc thng s cu hnh cho .NETCC THNH PHN TRONG TRANGDataCha cc lp cho php tng tc vi ngun d liu, Hnh thnh nn ADO.NETMathCha cc hm v hng s lin quan n x l ton hc.WebCung cp c ch truyn thng gia Client/Browser; N m t cc i tng c s dng vi ASP.NETXMLCha cc lp x l d liu XMLDrawingCha cc lp cho php s dng kh nng v hoCC THNH PHN TRONG TRANGKhai bo Namespace

V d:

CC THNH PHN TRONG TRANGCc ch th (instructions)Cc ch th c s dng khai bo cc k tha t framework hoc t nhng source code khc, mt ch th c bt u bi k t @. C php:

CC THNH PHN TRONG TRANGV d:

CC THNH PHN TRONG TRANGMt s cc ch th thng dng: @Page: cho php bn c th ch ra cc thuc tnh v gi tr ca mt trang .aspx, c s dng khi trang c phn tch hoc bin dch.V d: