684

Click here to load reader

ASP.NET 2.0 24 óra alatt

Embed Size (px)

Citation preview

T_ ...Scott Mitr:heII

IZASP. ET 2.0II 2U......

TARTALOMJEGYZKAszcn6r61., .. ,o " , o

. .... xv. . . . . xv",

Ik\'(~z('((>,;. , .. , ... , . . . . . . . ,

J. rMl1.6raMia~

ISfllIIrkeds az ASP.NEl-teI Ismerteds az ASP.NEHel... SP.NET! .. ..... ....... , ....... ,.. , .......... 5

Statikus ,,'eboldalak kiszolglsa .. , ... , .. , . . . . . . , ...... 6 Diruornikus ",eboJdalak kiszolg:lI1s~ ..... , ....... .. ........ 7Az ASP.1\'ET weookblak clhclycz6c ... ....... . , .. , ....... , . . . . .. 8 Az ASP,NET-mowT, a szerkeszt "s ~Z adatbzis-rendszer tel"pil~ , . . ... 12 Ismerkeds a VISual Web lk"dOf"'rrcl ...... ,... ... __ , ....... 15 j ASP.NIT "'ebh,,!y ll'lrchoz.!isa __ . , ... , .. , . . . . .. 16

Egy egyszeri! ASP.NE'!" wcboldlll(,trehosa k klprbL'lsa S5zcfoglalh .. , . . . . . . . . . . Krdezz-felelek ...... , ____ . . . . Ismtl krdsek ..V~laswk

... 18 . .. 19 _ ... 19 . . 20

........ ,

_... , _"

.. 20. . 21

Gyakorlatok .. . ... .

2.6!a

IUASP.NET PfOQIlImosi modeUje

Az ASP.l\'t.i weboldal IITML re,;7.e .... 24 IITML-gYOf:SlalpaI6 ........ . .. ...... . .. . ..... 24 Al XIITML-fI rviden ...... . . . 28 Az ASP.Nt. T weboldal HTML ,bz(""""k l:trehozsa ~ Visual \~eb Developer " segl~gvcl ............ . ...... . Az "'SI'.NIT weholda! forrskd..esze .. Objcklumkzpnl prOjjramo~~ - gyorslalpal 43 &emnykezel6k az ASI'.NI::Tlx:n ... 17 A webes vezrlk progr~mo7.sa . ..... 48 sslefoglal1s .................... . Krdezz-felelek ......... . ......... . 51 !smft16 kl'rdbek . .. 52

" ""

. .......... . ... . ........................ . Gyakorlatok. . . . . . . . . . . .. .......... ... .

V~1a'lOk

..... 52 . .. 53

3. 6!a

A VIsual Web Oevelopef ilaszn6lata

j "'ebhely ltrdlOz.sa az objektumok esemnyeihezsszefoglals .K~rdezz-felel{'ko o , , , , , , , _

.... 161 ..162, . 163o o

164165

o

o

,

,

.

o

,

o

o

. ..... 166 o o

Ism~16 k~rd6ek

V::lasmk . , Gf"korlatok .

...

.

..

o

o

167 . . 167 , . 167

8.6nt

Az ASP.NEl sz6vegmlgjllenft6 VmrI6i SWvrlsoe a GlidVk'W \lczC:rt6 s.,g~o!""l .... .lOIIO "datok trlk61~k c"8,xHyezke ~ fe \ha"'1.... ~ 16k n "k .................. .lo81 Sl"rk~'het6 r:1csnzet ltrdlOz$:t ........... .... .. . ... . .... .lo85 A nerlc"'zt6 feliIlet leslreS7... I:dsa s II frisstki 'IJ';lWlyok .......... 3f17 Optimi"" """,,nllk . . . . . . . . .. . . . . . . . . .............. 397 A&.."k !,.".;r.r.i"" a Dct:Ii!.o;V,.,..... \"e-r\6 $C8r~g\el . . . ............ 399 A !,.,mjr.i51 dmog:n Do:taib\"oew tesuC$Ul:d..q,'Y dl,wmiml$ ".dJOida/akat houanak

I&r". A dinamilru~ webol.dabk olyan oldalak, amelyeknek a tart:llnt dinamikus.1n llitjk ,,16, amikor a litog.1!6k l"k("ik awkat. Al Amazon.com nyt6lapj:l pld\ul bejelemkez&nk Ul~n olyan knyveket mmal, amelyeh1. kifI"1I1 kezd\'e rn:I.gunk is lmi I'o,;tiuk. hog}"n 1.>ll,"I\Unk ltre. kmlezhetnk le i m&Jo:.;ithatunk adalb:lo7.N>b.t a \ "1SUal Web De\dopei ,;,; ASP"' Tf okbUk segi'~'eI, .... Ebben a leo::k8>en arr.. sszpontosltunk, hogy mindent mcgfdel6en bclll;L~unk. hogy nekil~lhaS$unk az ASP Niif wc:balk:Jlnl:lsok k6zito!sfnck. IUr nem lmru: 1'OS..z rgtn n IISI'.NIT oldalak I~rehozi~n~k mikmifre mtmu. fontos, hogy d6szr ami sznjunk egy kil; ;00t. hOb,), clJen6riUOk, hog)' minden demet megfeld6efL A wcl>kiQ.olg~l igy kre Semm." elindt cgy bn86s~ is, am~ly kiadja 3 kttes\ 3 kH"tkcz6 fonn~oon: http://loc~lhost :k,,pu/lz.m/ ASP. NET_old"l . -'BP",

al ASp.NET " ..d)hel)"ek ks7.l~re a

A ktrelem http,'ll.cx: .. lhost rt:szc aITl t:1jo!kozt:uja ~ bOngs7.a, hogya ktIelml'l az adott sz.1nt6gp "'chkiswlg;6j:lhoz kel! iru"'znie, nem pedig egy mislk kisz.olg;\J6hoz lU Imerneten A /c.tPIJszm adja meg 3n 3 Ilinpu/(ponOO. amelY'-"fl kcNSZtl a kMIrn.!( dk!lldjk 1>I\I1&."fl wlg:l16 qn' adon k:lpun kerez:tQ1 fi!!)...:li a bq\'6 krdmeket. Amikor a7. ASI'.NET Ik>-dopmem WebSefvert elindtjuk. az v.I!asLt egy n}~toU k:lpuL, & el jelenik mo..~ az URl. k.1PUBZII.oI ~~ V~I, al'. ASP ....TT_old.ol ."spx rsz a tcs;,:telni k\~nt ASl'.:>:J:.T oIdallljlne\-e.Az ,\SP,NEl" oIdabk hc:1)t>en trtn elhdyezbc, s az ASJ'.Nl' De"velopmL"flL \l,"d, Ser.'eren kel'CloltOli kiszolgl:isa tbb el6nnyel t~ jro

ti IkUul sorrI5OIT.I.,igIg!~kedhetnk ~

khl'lyom kCTCSZlilI.

B;ztf:msgos. Az ASPJ,TI Dcvdop~m

.0\2: ASP.I'iET oldalak hc:1}'lxr.toon elhclye~nek Iegr6bb Mtr.1np, hogy a2 oldaJak:u CSlk a SLP! .~ml6g"pinkn tekintlK-tjk meg. \'"Jgyis a 11tog:1tk a szlmt6gq,..1kn nffll rudnak ol}'\ln URL-eket beimi a bngs:dSjOk chn.-;:lvjjoo, amelyekkel n)CgI;ll.og.~t tUl/k az ASP,NIT webheJyiinket, ll;( olY'~n ASJ'.NllT wl'bhelyf:'! ~en:,tn6nk kszteni, ~yet b:irkJ megtekinthl'l:. aki imemt."tk3pbngtn6jOkbe berva ell~!0g3th.'lnak a ,,wdynkre. CA Micruoofl webhelytnck \anom~nyne\'e ~kul ..icrolloft .~. a ~zerz6 pedig '-JIs1.ln([leg BCOt tmi tche II I n to. COm lenne.)

:lZ

TamWszetesen csak olyan tartom6nynevet vt&szthatunk, amelyet mg senki ms nem flgy8lletett be. lia meg SZIIretnMlk tudni, hogy az italunk klWn! r.t~ szabad-e, 16togassool el ft http://_,netaol.cOlll elml, ib. elmtt beIrVa 'g i6iiak. hogy mig .1rhe16-e,Ha a webhdyOnk:Ok

tI. annak lbbek kti,!! a k\'t'lkez

A U'ebhdy II)'iIt'llllOstl/l clblM6. Ha a wclJhclyet egy wcbgnda t;ul~l fenn, brki megtekimheti 3-tl, :iki imcmedc:lpc$Olau.a1 r.,nddkezlk SQjllarto",tln)~,CI(1' has::ntlllwl,mlt. H.:l bq:gyeZlClOnk eb'Y lanom!nynevet, ami a "'e"helynkre mUl3t, a 1::.A W.. bg3~k ll.:m)IlU n(,hny doIl1n61lbb WZ vagy tbb ezer doll rig leljtd6 d "i ~~moIhatna k fd, II nyjtott sroI8~ltal~sokI0l ra~. 1tal1bln belpsi dij is \'an, am; 25 ~ 100 doll:lr kzt! m07.0g A webh.,ly clhC'lyez~nek kltsge me!Jel\ :I t:lMom;\n'fl1 ~ bejegyzS s Hcllo,

World!"~orid!"

szvegel jelenili meg, nagy mrct" bertkkel . Miutn I"-'rtuk 3 fenti szvegout [)ebugging (lndt.-. ),iooken.'.s(os nNkl) menilpomol. Ezzel elindtjuk az ASP.t\"ET Development Web Serven, illelve a szmitgl'p a\apndn ... zeu bng~sz6jt, amelyet a prog,..~m ~ http'/llocalho"t,kapuszg;;pr venni. hogy cg)' webgazdnl hel ye~.zUk el az ASP.NI:.T oldalainkat?

1. A Sl:.ItiJrus ..."riloIda.bk H1"ML-k60(0' fdlllt'fUl ~ k.. rdb: hog)':m helrezhetjlk el a IITM~lemeket az oldalon? Ha nml q;jmit lllCIVlyi :\Of1ft51 \"~gy szkZ! tesznk kJ, hogyan keszthetOnk oly:1fl v.-'ebol ... Iv n

eul< r'aovr

Figyeljk ,"k cmblnl' III qn"lln.

A .. tabi...,. HTMl-elem riessan1 ueReatRI hoz ltre, amely sorokb61 .. oszJopot;b6I l. Ert al elemet gy*-' hauNllfii; weboIdllltlt efilndeUnll! kIaIakltitl, bf ..,., ms m6dsze.-ef:; is reodelkemr. AInak. A HTML oldalak elrenderim-6I UUI (EI~) menli Insert T~bIe IT~bL1ut bewJrso) poruil. EMo.-k 1Ul1.... r.. 3 2i .llldn L:tlllid pjlrbesztdabbk jeIen.k meg. :o.hol ,-;tbmlulunk. hc' rg-,' sz::atJ\-:i11)"O& .... blon'"

2. ID Az ASP.NEl pr.,. ........ 1I'IOCIIII- 133(It'mplate) I'ptjk a t:lbli7.atOl. VlIgy egytm t:lblz:ltOl hozunk ltre, s IT\;lgunk adjuk meg a megjelenltenj kivnt soruk (rows) s oszlopok (oolumns) ~mit, illetve a tblzat teljes sztle:ssc.'g ~ kijellt mar:td, a bettpus l11d05it.1s:hoz csak annyit kdl tennnk, hogy a bal. fels sarok kzell'ben 1",,6 Cut (Ki~g:5), Copy (;o.11~1s) s Paste (Ikillems) ikonok abu ulalhatli5clbl az Arial lehct6sget ~Ias.ztjuk, (Az emlilelt ikonok egr oll!, kt papJ"l, illetve egy \"1g6bpol 1brnwlna k. fs kz"et!eniil. a \1ew. Fomllu s 12yout m"nuk alat! t"Ulh"tk, )

_.-

-

-

2.5. ibraAz ebi oszlop larmlmn:aa

a

>r "ezhi6k~ l:malmaI, antefyekt'! a gr:J"tlrus Icrvc:z6ben n c:gl'rrel az olclalrd hi.. A 2.8. ~br:i.n I~dlatjuk, hog)"dn kell kin~Zflie az ~bl~knak, miutin e1helr~21k ~ ngy Image 'ezrl6l.

36 I Lru: ' lIrrMIIbd6S IZ ASP.NEr-tIIMegf1gy.::Ihefiiik, hogy:Ll: Im:l8'" webe; vez1il< rno& mg vri)6 X-kt'1lt jelennek meg. Enl'\ek az az oka. hogy m(:g I'\em adtuk meg a k~k URL-jl:!. Ell n Image vez616 r ..... gelc:bJI ~ 1xIoge,IIxn .. 2 \o :11m mUD!", Fig)'clfllk meg. hogy ~nUI aL oldalunkl':1 llog;1l6 fcllUS-ln.ll6 Jl. me~'8}czik :lzz:ll. am;1 a s1.crkcmben lllunk (\l'YSIWYG - Azt ""'pod, amu IJI.SZ),A~

-

-

Coogle

l.10. "... OU

A5P .'"ET uftJoldalm"!l/dlnt''I!'

"'~____-",==-_J

"RY b61~

A HTMlunaIomEgyes ,,mttT,-ak ken)clmo.cbbnek rzik. ha....,m a grafikus ~cmre llmuzkodnak. lunrm a HTMl(orri5lszmeszr.'c kbz,"k CI ~ wdJokblakaL IUr .. HTML Ixo(rn~ fomis tWzelbcn :\11;!lJoon nem olyan knny b g}"OfS. mini :l $lcrkeszu'l h:\$ZIl:ilaIJ, a cmkket. az dhdycWi b a bch50kat jol:>IxIn k,Mxon tanh:lIjuk

2. 6nro AJ. ASP.NET pni\jlM,"'*i modeIjII / 39laprl ~ SoiJrc.-13pra, hogy l'nl'kelhessuk, mennyi ld61l:1karil meg neknk a szerk"l'V6. A mcgleli ..:I5en hos.;z(j HTMlkdol

Egy percre

k~paoljullk ,~,~, ~ Dc~,gn

a 2.2 ptlda mutatja.

." 3:,

;'_~~::~~~~~::;.a8v~.Vb' .Inherit._.~;;;'.;";,-,-.--.->----------------'" 11, 21, ",:>

23, MSN< ISJ)6n,.

.. . cIl1\cl), K("bg...em frhet 11OU, hogy a ~ew6 j r~hny pem:t megtabrit nekilnk ahhoz kl'pe&, minI ru. 5a~1 kez:01eg kellene belmunk ezeket,

EI6SWr b.

II at.,

~

ts .'15. sor).

tn--' I"",~e2'

_ loIidtb.'lllg,,'

'>

...,,,r'

lAalle\lrl. IGoQl . Ili f'

A .... d!es \"ezrl6k kd", ru.5Of11i1 a 1fT.'llre: kez""" &i Z"fIik a r-:otepad Oe&1l.enrt1b) progl'llm a bngb!be bethu Hn-IL-k6dda1 A bn~.6nric (lmernet Explorer 6.0l elkOldn Default. UpK okbllrn.lL-k6dfl1 3 l j p; " ~'-d>5: Untitled PIIII'

z.. 611 ~ ASP1T 1II .....1CIIi mil '1 141t

6,

d,

.po.,. acUon ,Det.luH .....px

Id=" {, nol ~

9, cdlv>

10, < Input_

t~. h!~ nu.'" _YID/STAT!' ld. "_VID/S'I''''TE .v.lu .. = '"F.POwtIJODII !KDQONoEzZQQ01 IhHvtlPlhpvv.ql.JT9Mg6ECII'

I~

11. cI"I'olJ. H, U. 16, 17. 18, 19,20,

",

!!v~

Y.hoo . \lHltd> Or,I ... "'ldlh,ap", I> :1:;'T webold:41ak IITML rsztt. frdllsuk

ket a forrl>kOd~ ..~I,g a IlTMl resz az ASP '\ET oIeb] kO~lak~l. wulmil rp le. a fordskd aZ! dOmi ~I. mi Iqn~ a dJrulJIllkus l;;lIu]omban AJ. ASP,:-.JET oIdibk forrbk6d rsze kt helyen I~het,

flg}'dnliln ,lIeI\"" statikus

~

1"1/,, ftJfllxm - Az A~I' NI;, oldalak ~lIha!nak kl kln fJjlb61 n d.ll n ...... aGP" &. n ,l ""ln ...... aps" . vb Jllom;in)'bl. Az ds talUlIluzz;;a a IITML-t &. a wd,e$ '~eI. mig a mhodik a f~6doL It (enld)!, dks;titett milll:i1Okblunk is igy tpOl fel. eg)' orfau l t ~ $

bIoIdd.oa kerul.Bar mindkllllI"n kerul sor, u e5Cml'nykezel6 pedig az a k6drsz, amelyet a megfelel6 esemny bekvetkezsekor "~e kell hajun; Az csk hajutni. amikor ktrelem ~k egy:odou ASP_ n okblrJ" hozzunk ltre e5CIl~)'kc ... zd6I::a Load C5C,,~nyhel., s hdyezzii.k bde,. ki\'~nt kdot.

Ib n ASPNIIT oldal IITMl rs:tt !:i.tiuk Design nhetben. e8YS1.enlen k~ninlSUnk dupl~n v:d;aoo\';l,. tervez Idncrtre, :lk arr.. vigy.1zzunk, hngy a h:in6be kalunl$Unk, ne pedlg valamelyik weIleS \'erl6rmny~hez L'Bild~hoz SlGk:!ges kdol. 3a~1 keZllkg is bcirtlllljuk.-

,,_ ........ _......

.'

.~"

2.IUIn..u ok/,,1 lead ~JIinJU=Mjh ~ 1et,)fId Itslbl JrlnJkm:wa 1>Ozrn.lju.k ~reHlgseUenl anl. hogy.I.n honuk Ittre az esemtTllkerel6t. II m\'elec eh,;~ utjn II forr:bkM megfeJeI6 ~k \':lIlahogy gy kell fe:slmlc, mint amIt II 2.4 I*l&ban Ullulunk

48 t L Nu: lInwbd6Iaz ASI'.HET-tII

4,

Prk ocrMn~'ek.. Az ASP,n ... ebes vezrl& egyike p&UuJ a BUlton (,gomb). Amikor az oldalra 1......ed6 Liwg;lI ~ ~ vezrlc5re katlinl, ~ gomb Cl ick (IGHltI'odS) esern6l~'e indul el. b ha ellhe7, mcgh,na n;>1;I\.mk egy es...'m6lykezel&. az a\)b,m le..6 k6d:l. It:uunw.s t\lltb~r:I ..,;greh:l.~6dik Egyd6rl" uonh:I.n elg. h2 szigoni.an o;Ik al OkbI LOlId eoemmyre &szponlOSllunk

Awebes _ _ _A2. Ml);!n kod.bban ~r be~l.hnk rla, hogy a wd)en a QJJI ~yi S2!.mu6g...'PO nk.)

2. !Sr. fJ,zASP.NET~ 1_"Ij, luAhhoz. hogy eZ! mes"al6sthassuk. ~rjilnk vi.o;sz:l a Default.npK f~jlho~. 6...:rjunk be egy label (sz"egcmke) webe!; vezrl6t a !1I'ML-dWI Web De>-eIoper aze ;~ megenged>. hogy ~ IIDlLkdol sajil keZl11.:-g rjuk be a Soorc:e lafXIII Al ASP.t.:ET "'ebok\aJ mNL ~ t:lnulod.nymba utin r.ltntfink II forclsk6d rtszn:_ Eg}' gyoN;IJp::"(",,~1 kCl(hllk, hog)' n-.ewsmc-rkedjUnk az objekl\unklporllfi s az escmn)"'t'zerdt programolhsal, majd megnztilk, hogy.In lth.-In>nk oIpn kdol;, ami minden alkalommal \'t'grehattdik. amikor cl6szr blOg:UUnk Ill("g egy ASP,t.:ET weboldahAz elmlt 6r:1k pkU, meglehCl&en t'gYllzcnlck voltak; a ''Illugban nem ...:,k I~ nuk:u ,-enn6\]{ A "I. 6cllxln rlr egy pnkuku.sabb ASP:\'ET " ..rl:>ok!att kontilnk. booyolult:ll>t, lfI"Ml s fomsk6d rszekkel. el6szr azonb;an rtszIelesel>llen ~ felfedezzOk a \'i:\Uld Web Oe>'doper mak~

Krdezz-felelekv:K: Mi&t (I 'tmal/Jasfclld, mfnlltiszolst"oldtll/ f>rOsr ....1I0u'W ",und I'pfttl"ll[d miII/hm liSP ,\'liT u'f.'boltl(lll.? A knyvben nn. ~:'llasztonuk a \-;suaJ Basicet. men II keW6 prograltlOl6k en~k II n)'-el....lt'k II h:wtNbt.ll knnyebl)erl rudfk dsajJliuni, mini a \'1OiUa1 C-~. A \\SW11b51C u~i k~ .ilInak ~ htkZl\apt ;o.ngoI1l)'eh1>el. mig a \iMI~1 O- rejl.lyesriJb jeIdet ~Ikahml E1.en !ID'I a \-isual Basjc nem lesz klnl"""'S"-" a kis- l. !lag},l>t1iIk k1;!t- a \-~\SUal O- igen -, gy kisebb az Cl'olye, hogy g~ hb:11 ~tnk, '''SY 1Ilii~, rfU57.1r:i16 hiblxI ~Iadunk belc_ A kis- s nagybetket nem mcgk\llnb2l.eu5 progr:arrwnsi nyd,-dn dolgozhat fel. minilu webes veZrl6kkd jclcntcnnk !l1 ohc/ben. maid nyomjuk Ie nh~n}''I2or az E.,"Illt billcntyUl, hogy n\'elii"tk II tfTkzt. Ez utln rjuk be a Ikre Are 5O",e /'opu/ar SNm:h Dtg/Jlcs szvege!. s ha benuk. feJljlk ki aZ egrrel Ez uliin v~lasszuk ki az Arial betiIipu51 a bal fe~ sarok kzeltben l:Ilithat lenyil Ji.sI1ib6l, legy\lk a 5z\-'egC! flk\"rT a Format menl Bold lehCl6sl'gre k;i!lintva. majd vgl i8"ztsuk kzpre a S2\t'g~'I a Format,Justify. Center mcnOponnal. Az l. gy~kor1atl107. hasonl6,," nundenkit arrJ bin:lUmk, hogy kshlelczzcn a Vi5Ual \X'eb De\'eloper f~zsi lehe!~geivel. Nl'v:k meg J*kUul. hogyan fest 3 sz\-'cg m:il; bet\itipu'i~l l; form.'izM:lI. FigyeJilk meg, hogy fdsorol:\sjeles ; szmozott l\Stbt Ls adlutunk az oldalhoz, s igy tovbb.

3. RAA Visual Web Developer hasznlataII I/ee /(molm4#161:

j webhelyek b ""cboldll~k K1rehozhl \,Ieu5 v.'ebhelydc megnyil:h:l A w:rke5116 !CSlresub~s:I ~ \"~al Web f)c.'eloper Options mlIet1 $g6t6I

tcr.cz6 ni'zctben ablakainak mozg;u;lsa o!s 1tmrele~

Al. d67.6 r.iban n ASPNE'T progran)()Zsi mOOcllj=\'cl L...,rieUl.ink meg, s megunul-

tuk. IIOgy.ll\ qxllrK-k fel 1l!. A."P "I:."T weool Devetoper m~ . A knyvben \q,g eJ;{ a fek.pen, CS n.n-.dellnek,ntenOk

5& I J. !Ml lSrraUd6S II ASP.NEr"",;.zolgjllat:ls:l,t. a 2, rban Jldig ~ S7.erk~Z!6 felhaSL/l6i fn melill!Onk el mlyd>ben, s an t~rg)-... Ituk, hogyan hozharunk ltre egy j ASP.l\1!T ",ebhelyet, k ho!,O'lln haSZIlhatjuk a gmfikus (WYSrwYG, .l oll! kapod, amit 1~1S.l) (I.'I'\'C'l (Design) M-Zetd, a ln'ML-t mutat forris (Sourre) nzetet, ilk"lVe a fOl'Tisk6d>zerke:sztl

:I

Mivel a Visual Web Developen61 nrnyezt:l, Mint mmden szakma esct&en, a progromozjsIXIn is fonta:;, hogy jl isrner}k a rendelkctnek. leh.1t a 'I','ebhely olyan. mInt egy mllppa a u.mit6gpen, fjjlok s almapp:k g)'Il""jlt-m(,nre, Ha j webhdyet Sleremruc ltrehozni a Visual Web IX'\'eloperben. bllinlSllnk a FHe tllIJdyiink lehet a :'Mjlt II ~mitgpOnkn v~gy egy !:Ivot. gq,en. A ~a-mel}i wmj I~ ~JI:I.Ulxln nem 0ZemeInek webluswlgll6kcnt, lelcit ~ gp, amel}-en doIgnwnk. ,,~lnillcrJes nem ad otthonI webhdyclmek, A PCI d~ sajjt etin haszn:lllll. wcbbngs2~.levelc~. sWrlIkol.srd. s igy l",'clyl'leZ tanru \':ll.mlennyif;\~ IIll1iIpp;!

ebbe ~ knyvt.1rl,.. k..'I'01

A Microsoft lIS u'/.'twiszolgl6,ki/1 IIcresztm - 11.:1 " slfimil~nkre telepit .. '1tOk az !nt('ffll'l. lnformooon Ser\'1C05 (liS) kiswlgilt. ,.zon keresrttil is nlfficdlethe!nk egy "ebhelyl!1_ \lelll"tn~ azonban. hogy az liS helyu hd}i>en weretnnk Ozemclll:lm.:Ol Loc-.oIlion len}iIO l\SbI ~JI;ass~k 3 file Sy>lem lelll:1~. =jd k fels6 sarokban tallhat Solution Explorer. (Ha nem l.1tjuk " Solution Explorcn. kallin!l;unk" Vlev.' menO Solulon Explorer ponljra.)

Ltez6 webhelyek megnyitsaMOS{. hogy l bIokkokl):l Sele.:/ mas/(.T f1aRf>'dl P'fO!tI'3rnoUs1 nl'eI\'t"ket il. tw.zNllwunk. de el nmll"lSOk. ~ eg)-eUen. t'jJ)'.qes nye/\T1l nrgitni a nunden ASP~ET okbI.

"'-1heIY

IUr III ASP,NIT oIlleljhez! Tet!}iik fcl. ltl>f.:)'II

!>,f , . t. ~spx

~-nk.

mcllen egy:',. l : .,yTu... .Up" ne>i! ~ffliI ASPSET okbll b Ezt az okbJt" k\etkez6 ~ ';~greh.. jW.a" ...1 adl~tjuk .......ehhd}'I~L

l. A ~ubon Explorerben k;utlntsunk aZ t'gT)ObIl gombj:h':l13 webhel)' ne'.. ~rc:, 2, A megjen. hanem

m:lr lteUi t,malomnul is eg)'S7.eren b6vithel;iik azokaL EIlordulhat pldul. hogy a merevlemewnkn mM 00 cscsl egy k4>f!i~ vagy egy ms,k projektb61 egy ASP,NIT okl;lI. amelyet U adou webhelyhez szeretnnk adni, llyef1 hdyu.'iben kattinl.SUnk al e#r jobb gornbjI'\'(;re a Solution ExpIoreri)en, s ,"l;u;szuk n Add Existing 11effi (Ll:tez6 elem hozzadso ) )ehet&get:.J szoksos fljlta1l6z6 p~rbeSZd:!bl3k jelenik meg. ahol megkereshetjilk an a m:lppit a 111Cfe\'lemezen, amelyben a hou.:adni ldnt tartalom tallhat, lla megulhuk. jelljk l, s kanintsunk n Add gombra_ Euel a kijI:Ikokr:i Mb. - V'O,,:nko7.:ln kOln.klfl,negh:nJ.rozhatjUk. K'it ezen belal is fTlI"8'Idluljuk plildauJ. hogy fllOrldlUk II Tellt EdllonXUlll ",inu 57.\-'C8 fek...1c 10 pontOS Courier t"ew Ieg}'en, mg II kJ;etlt.szveg ugyaflOCl feh& 10 porH05 Courier t"t:W. kk 1J!j1t&re1

,

...

-_ --- ..-- ...... .. __ --- .__.,-- .- = -,-..... -_ -.-._- -.--

--

~

3.1. Mo

AdJldl ...... Ils.u.>I 'rot> ~ utIo"'ll""'bo'>l ~,Jns'igo\l) ablakkal. amely a kijclll ~mlL-eIem. illClvc webes ''erer\6 tulajdonslgait mUI:II)en rrunden ablakn:.k ale. nln:te s VISelkedse '';ln Az elilcl}'ez!i nem ~k az ablak helyt hatrozza meg. hanem azt is. hogy aZ ablak lebeg6 '-J~' rgztell-c. A Solulion Explorer p"'ld:Iul abp1ll3potban II jobb fcl56 sarokhoz ragad. mig a TooIlX>x a 001 oldalhoz. Azok~t az abl:.kok3t. amelrindig I:thal llapotb:an, mvet ez.. kre gyakt:ln van szbg. s minden ms ablakot e!uJn6re :illilOk. hogy feleslegesen ne foglaljk a kpcm}'tef'letet_

3, .ln A ViaUII Web De\J1ioptI .... II 1 71 1AZ al>i;,kokat a feltOzben fs az elrl"jtken kiviil be ~ z;'irhatjuk, Ha egy ~bbkOl vgleg el szen.'tnnk tnt(.1ni a kpc.'!Tl~'fI, -=k annyit kelJ tennilnk, hogy ~ jobb fels sarkban (a I':I.fZsZg meUett) IlILilh:tt6 X gomro kattintunk.

He egy ablakot nem tallook a kpemyoo 8 ~I1 helyen, lehet. hogy mshovA hZ1uk. vagy vletlenl beWtulr., Al. utbbi esetben c,* annyit kelltemnk, hogy :I view menben a meg!8le16 abIatn8vr. kattintld.Ha egr ablakot mshova szeretnnk helrezni, Q;;Ik kattintsunk a telejre, fs az egrgombot lenromva tart''a hzzuk az ablakot 3 kivnt helyre.

Segftsg karnyjtsnyiraAZ ASP,Nl:T rugy tudis, megbizhat weIJfejleszt6J technolgia_ amely a _",rI' Fnmework (,r-TI kemrendsU"t) nevt1 pl3onn", pl. Ez a pl:!onn osm.lyok .'>Zzaibl jJJ, ezek biztOliitpk az ASP.I'ET--fOOIor kzpomi swlgilutAsail. Thlltt sziiksgtden:l.ll islTiol'"!fo,zsgilluk. hogpn wab/l;ltJuk le:;I.~ a feleszt6kfn)'etttel az OptIOnS ~rbes~d:obl3k seg.t.s

y: A le~"SZCn'lllben (ig} gy6z6dhenlnk meg aTTl. hogy egy adott webgazda regnlil elhelyezhet-bkiszolgiil6, an,,-,ly~1 mcgkapunk a V;,;ual Web De\'eIOf> in sep.3,..Jle filc fell6nl>gyzelet, lll. ASPSET oldal csak egyetlen fljlb61 fog :illni (Old.. 1Neve.aap"l. s a forr:1.k6d rE.,L\ eg)' kiswlg::iloldali blokkban keU elhdyeznnk. Clszerub. ha bejelljik a jell6ngrzetet. ITk'Jy esetben k Hjl jn ltre, az 0ld1 feltl1e1ezsekkel ~lnk" "gfelha!>znl kq,emyjnek felbont;is:ir61. MIvel mi. a fejleszt6k, sapt kpemy/Snk felboll1:'isa szerint rendez-

" . 1 15mk ri ::IZ demeket, :lZ okbll CSlk azok 1~t1uljlk nxgfelel6en, akik a mil"1lk(-.'c! :ilZOOOi!i fribonWti kpemy6,.eI Jjtogatnak CI az oIJalunkr2, ng az aJ:lC'IOIl)':lbb vagy 1'TIIg.1sabb felbonthi h"s7.n~16k Ion: klX'lkap!Ulnak. Ezrt>('ZI$~~ a k\-ctkel6k m... " lontossgllA munk;i""k el1~

II len kijelli a S1.ofI,,r elk6LIl~nek n~netrt:nd;& 1-13 van 1IlC'netr-en..l!lnk. ~ kzben l.ilh3t]uk. meddig jutottunk, s mi az, amil ~II el kcll\'tgezn!lnk_ A ICI'\- ponloe.an Icirja, mUy..", k~gekkd ken nujd r.endelk"wlcII

s:mf!,-emek.

Jobb, ha ntis szoIclsunkkil tessrtlk a 1er11t'2!&t. t'ztrt :uzal kt'Wjuk_ hoS)' I1lC."gnenk, nulycn .5ZOIg;lUsolc;al kell b-pilcn!lnk ~ IeockH,en elk~lend IISI' "ET ...dJokb!unkba. illetn! hogy m,lyen fellll-o;zn1!t ft'lk.1c:t kell non k.abkiununk

Ha nem SZDri; eIQ id61 a terve.,. nem Ieszri. kpe$ek I fnkiinknek sem v6IaszOOi az olyan kMcliseks ",..11 .Mervtyi ideig fog 12 lartaniT vagy a . HoIliIrI i fejlHllsr. A ~velelm6nyek ~stliJinak uzdlWtsa - ami "'alban s.zinl6n a tervmsi szaasz .gyik feladata - .melen abban is segit, hogy ks6btl III lBgY9!l f/rvrts. n 1 f6tdnt vagy az gyftl ne UrHS8!1 O/YM szcIgiltai&$ObI a pr~. anVtveneket nem szMdkozttri:. belep/teni.

A ler\'o:zt:si 5:>UIlt;, fehrJt nlllg(o, A k~pt'm)'6nknek ekkor ~ -[ :\, 11rln kell h:c;onlitln~

U ..Eum" ptmm n.. 1P __ .tozza a ~zkJ;ges e5effinykezel6t. ts az oIdol f0rT5kd rszre lIgrik. ahol II kvetkez15 kdo( kelJ 1~1nunk:panial Ch .. FinonciolCalculotorInheriu Sy't_.web.IH.Page Prot .. etl!:'d Sub ~rfonllCalC_Cl!en, megll:'I s ill rendeljk vllol6khoz euh'! az -rtkeh't.

Ha a 4.1. pjda kdjlibl egyttaln nem rt1/r;; semmit, aUDi- sem kel agodnunk. Ennek az 6rnak az a clja, hogy bemutassuk, hogyan ~ IlJe BlIY hilSlllOS ASP.NET weboldalt; az oldal 1000skd rsz'lel a fejeletbe!l ksbb rszletesen logIalkolUllk, ft az 57. tejezetbeo mlyebben meglSmefjiik a Visual Basic nytIlvtilOt is.A havi IMeszt6rszlet kiszm~slka hasm/t millematikili egyenletBt megtallhatllka http://www . faq". orOgY kipr6b1ltuk " pntilgyi mmol6gpOnkct TllSOk be az old~lt a bllngtw5hc a Debug menO Stan Wlthout Dcbugging par:mcd\':ll (VlIgy a CTa.L+f'j b1l1enl)'ll' lenyons;ivat), ~IIU Id"orditta :lZ ASP,:'Io'ET oldal f~d re,zi-t, dindlF' a ".~ b betki a financi a lCal, "l" to.- . ...."" oldal .

A SIIft DebUggIng parancs 1II1Of!i1Jl1Z ASP:NET oldal fook6d rz6L 1Iwldit,a BYJSUI! web O.VtIOPer hibakerls6jM j.w.IQger), js betlb IZ oldalt llKin!I'sz6be. A SIIft Without DeblJ!t'illllll eZHI mmben MI/tIlorditja le Bkdot il lIti be llKin!I'sz6ba, hDVV elindilarNl, lIlbaker,1I1. A hibak8f811 otyan $lQtMr, 3O'I8IY kpe. elfogni afut6 k6dot, il IIIIMt6v6 lHZ1 I Pf~ hDVV sore, (-S k:mmlSunk a Compuu., MomhJ)" c..::.&t gomtn, Miuctn a gornhr:l k~Uintol\unk, a h:""i tOr!c~1.tf(-nl1:l

rnegielcnik a be'l'ileH mel!6k l a gomb abu, ahogy a

:1br:in

1~lh:IiJUk

_

......_""" .... 0-'0"'..!!l.~.,~r

--"",-,-lll

--_&,I

".... . '___.;1.L....

;-

.

eooe......., ,'".. I_16"n)"':>s IITML-el"mekk~ IIbkitja, 6; v~h"itj3 a fornskdb:ln lev ~nykezel6kct, ami 3 kime-ne\e\ mg ~bb mdosthalja (A FinancialcalC\llato~. asp" okL11on 1",'6 .... rfOrnoClIlc gomb Cli"k >cm~ny kezelje plen a kapott okbl fOrcisL ~~ minden bngsz6lehet6v tCSl;~ lI.7. Intemet Explon.-rben " View (Nzet) menO Source ( Forr:is) pOntjt kell dla=nunk Az el6:illitou HTML kd megtekinlse ablxln is segthet, hogy megtalljuk egy hna oIcll, de mg h" nem is mcrlnek fcl probll'mik, akkor is ajinJon minl gyakr.>.bban megnmi II f0l1"1l5l. hogy lissuk. mjk~1 alJkulruk l a webes vezrl6k HTh1L-U::.Most lljunk meg egy percre, 6; \iZ$giljuk meg II Filancilllcalcullltor .IISpx HTMlkimcnL.,a mind az oldd els beth6ekor. mind.az adatok nJeg3d~ s,. Corllpl.lte Monthly l'II gornbr.a ,,,16 kaumts uLin. A2; ASP.I\TI ok!;!l eLj,2. plda mutatja,

~,

d'tml >II1Il""."htq"'IW'WW.w3.or\l/1999n.htlfJ" 28: 29: dnput tYP9="hlddn" """"'~" ~-"LlOo\1"IOO" _ ld~ _!:"!VENTVALlOo\1"IOO" value, _ "/~crbM5A9~.91"'CWKUbujQ~Yoal0A9LenfqNAb2wEVk.jXCQOSWPS9, ... ~q~'JWOUro " I"> 30: - is .szaln~n}"u:I ~rrML-r:5m6dd al:llrul. A T"nBox webt6k ~Ital bert adatokn juuassunk vi= a ",'ebki.o;roI~I6n k'\' kiszolgal6okJa.li kdnak feldolgoclsraAl ASP ''ET-mo!or kpes meghat~n;)l!ni, hogya vlSlo'Zacsatols oka ~z volt, hogy 3 felhasznl:J Compute Monthly cos! gombr.!. kauinlOCt, eln elindlp a pertonnClI.l< gomb Click esemrn}', anunek a h:lls:ira lerut a hozz tartoz C5e1nnykezeI6. Ez... ."

kivl a l.arom beviteli "",dl Text tubjd.onsjga l~ rns,sl, hogya relh:JSLn:i16 ~lt~1 bei" "ket tkrzze. Teht lefut l gomb Cl1ck escmnykezel6je (lsd aL l pl:1(t), ~ a megadott adatok alapjn kiszmitja a j('"lzloghitel havi trI=t6rh1Je~. A re$ult .. cmke Text tulajdonsga ennek a ki..' ye.o.u



'nbI\ll'''''ptln id.r ... ulU>Your OIOrtgllg ......"""'nt Pc'n. A tr~pomO! ahhoz II k6dsorhoz kell adnunk. amelyben ~ Di .. P Aa DoUble _ 10rs kr;elez a margn,~1 .. 1ve

Jn

,tnykezel6. (Mg e~'S"ler: a Buuon vezlirl6 esetben ez az C5eITll:ny a Click. "agyis a k:minuis.) lia e~' ''Cz':r16nck nem az abprteJmezetL ~nythez, lunent "gy nJ;J;ikhOl szeretnnk esemnykezc!6I ,endelni. kzvellenl a forr.l~kd r6zbcn kdl k"'"Ia~ztanunk a megfelel "ezlir!6I6 esemnyt:1 lap tetCJl'n tallhat6 kt len}116Iistb61. Az dj~r1S! mvitkn iSmenettk ebben. ,llcwI' a 2. fejezetben K: M/ t(!rr(?"fle, ha " f1'Jnzilg;; szmmis ktljET oldal, ha II fell13$Zn~16 nem !TK'gcngedt-l. amely a IITMl kdol b J "'ebes vezr16ket tartalnuzu. illetve egy forr:1nlcibb UQkhOZ $2lIn.,k, akIk kotlilQLOlI rrolIr:mx>Zi. Inl'rTCl renddkc:mek. I la "zonb.ln eddig o;;Ik ~ n"""t BaSIC 6,0.,-al vagy II Vu..Xripuct (a \1sual B:lljicnek " ,NET kCre!rcnd..:C( beveZt.11'..c clOni vaIIO/:aul''al) dotgollunk. j:tvaooh ezt J lrom 6111 is figydemmelldsrru, 1TN.'1I J nyel\ n ,\ a megf... ld6 admpus kl,jla~1$:1 ltalll>O;On 1~ ep tipuu~ Int _ r. amely;l -2 l,+,' III.~ -NHl2 147 '\SJ 6-f~-ig LeI'Jt--d6 t:lftominyba ~ rtkeket k~ rolni. Integg tipus; \.:l.hoz! II k .... ..u.,~ forndban \C1:edJCI"nk be:

Amennyiben ..okkal ki$C:bl) es';.;.z .,rt.,kek tlmUsi", VOln szilksg(lnk. ~ Short !ipu>! ct'lszcl"ll d.bS2;1.JInunk. amely II -.U 768 eJ ~2 71)7 kZ es6 ~'g{"Sz $Urnak fOjpdis.:l. ..... k~ A ;hol"t a..,ze1bm'k mdja az aLihi,.

Az .~ ig)' fot

A h.lnnadik s egyben ulols nem ~ mmlpus a Deci . . l, anICI)" ~ tiz halvn)':1I szenm Itli."mezi II tOttrszt A DeC"t-l nt-kek O k 28 kZltlt,~'CI t:malJl13Zlutn:lk. S"ull~ ti~ esetcr. 3 legnagyobb wmo amil egy l> '1 . . 1 Ipus \'lwz

5. tn

A a.ie .; I,..,.. 411 ~ 1113 V...I

tlrolni ktpes, a "9 228 162 51426-1 .H7 593 5'1:1950 .1.i5 (a k-gklSebb pec.hg a-79 226 162 514 26--1.137 593 '>43 950 .\361 lllh:unak. ez;!":t legnJS)'obb, 28 tizedesjeg)'et Clrulmaro ~cim . n>ely tlrolhal bennilk. ;I 7,92281625H26H37S93543950.H5.lkl ). A konkrkabb I nteger , St r i nq vagy Double tpus cll5nye, hogy ha ncm mt'gfdd ~n~ket pr6Wlunk rendelni egy ilyen v:ihowhoz, hibailzt,nctet kapunk,

A Dim utasftsAhogy koribban emltettk, II ~ltoz6k3t el6bb be kell vezetnnk, k csak ez ut~n "ehet jOk ket ha5zn~latba_ A rugonhn tlpUSOl'l programo,i nyelwkben a v:IJtoz6k oo'eze\ekor "em csak 3 \rj ]toz nCVd, hane,n a lpus:it is mcg kell adnunk A Vl~ual flasicb..n erre a clre szolg:\1 a Di. ulasil~.

Legegyszerubb fomdj.'iban a Dim utaSts egyszeruen n>egadja a ,"ltowDl ..v"lro~6N"ve

nt"\'t.!

s tJpusJt:

u

t!p u.

lb hjrom rntege r tpus vltoZI szeretnnk ltrehozni, haszn:llh:llunk !rorn ~U6 Diln utaSs(, ptld:iul igy,Dim 1.8 Integer

Dl .. b

aM

fnt"'Jer

Dim C ... Inteqer

oe haszn:llhatunk !Intm ,'ltorob:an tlroljuk. ~1 312hhi kdot kell megimunk: Int-v"

" b ". c

iti ~ll ~ b ts 3 _ ~b6I snnaz btket fagp kapr". ~mi 35.

115 l r6&I: 1ImIIUd6I. ASI'.HET.....A mIlvelet, )1:1 b/n;lris ~ un:ltis ma,ektk~.,lI hlg)'1:I q}161)..::ZS nln:letk~'nt) is alkal mazhat. AZ eg)1l'nyezs nnl..-defek 9J Ill'lmetj ur:qqwt"'UI8:>[ r: , ., ~ l3 -(. ') I!!~J PI\QJ ue... ~111~1I.fYl''SQ zr .U!otI l\!!I~"l\,,),""'~ IIJ.'J1I u.:npI31;I.\DW !UI'1U",z~ ""IJ~ VI") jCl>Ir~-\ ...... m>ZOJ fY" " d.l1~_' l'>'Iil'IIiIIJO.kl ~,:,nWQ U plew ''tipr lf'1.\j)W W"lI"Ui U.lI!pl.\QJ ~ u-". ''':>8v-s1.\UU;M,U P9>t ~l!~ c 'lol~lU.ll!~ 1:l.'1l;M,U& ~,.unw!1ZS c l)ilOIZ!I.)J1l1 T1~J cV,' cgy

m1hik tlpusrn \~IIOzik K~IJ\c llpus5ubklds leliClStgcs: rejletI (impikiI. bel&T1~11) b nylh (explien tallunk egy Suict (Sugoru) ncv be:Uit.ist - ha ezt True-ra Jlitjuk, ICliltjuk:l. rejt~11 szkit6 tipuSitalakit.ist. Az 5.Z. :ibrn jjlhaljuk. nogyan keila Propbi fom1.1oonOi,. v,fltozNe-ve ...tipu~

A "h0z6lpusa h;lt:irmu meg, milyen rt'kekel trolhatunk a \'~ltoWlxin_ M,nden flpo.l5Ilak V;IO egy tnktartom;lnp: n Integer lpu.s -.;'i)toz6it, A vezrls! sz.erkezetek !ehe!v tcszik , hogy mdositsuk II program ut:lsit!ls:linak "greh:l~;\s;'jt. ami alul~ban aZI jel('mi, hogy a kd eg}'cs rsl.Cit Ismtelten "grel\:ljljuk, amig egy bl7.onyo.; felttel nem leljCSiil, ~-~gy hogy ('gydlen eljir:\sb:l v:tgy fSS"nyl", tokou.uk az egynlhhoz bpcsol6d6 utastsok:ll, amelyet ,,~tn egy V; IsmtJskppen: aSt rl e t bd.lliLh True-Tl( lliUs,1 ~ Propertics ablakban arr:l utaSlp.a \r.wal Ba.sk\.'t .. hogy ne engedirezze 3 rejtett lpu~t:llakt:sobt, lb a be1I1it:iSf\ak a Fill .. rtket adjuk (\"...gy meghaL'irwatlanul hagyjuk). " rcjwu bvt ~talakt:.o;ok tov1bbr.o. is trvnyesek mar:ldnak.

5. 6ft A YiIUII BIlit d .....i " ~ 121Jmagam meg sz..,kClm hlg)'n. a rqtC:U l:6.iI61ipus..lClb~ 1ehe16:sgi't. meri \:l.pasn;!btom ~nt a kd g)- ;itl;itlt.:lt6bb INl'lItI. MinhajLoisir.. kerGl sor. ~mdy egy Integer- tpus'; v:lhoz! V, iUet"e ba a JClsz helytelen. Ezt a k"t"lkez I f ulast~sokkal rlletjOk ej,

17 Or Da t,,'l'l"" .Nov.IIQ"~ '" fi then lbl M ss ag" . Text "Good ~ ve nin \1 ." ..Knd If

If Il4t .. 'l' I ..... How . JIour ,. _ 6 O\nd DateTl"", .How. llour < 12 th"" lbll!~8nl1 e.T"xt 'Good ..,rn in\1 . Kla ..1f Date1'l_ .How. JIour > 12 Il nem le7., El&7.r nl'uiik meg, hogy:m fel egy olpn Da ciklus, aml"ly addig ism~d6dik, amig a rell&1"I igaz,00 1Ihi! .. f ..1t,jt ..l

ucuHII"lUta"Is2Ut~"itIl5N~O

A fel t,jte] egy logik:ai rt,";kL-l viMz.lIad6 kir~;els. Amikor ~ program a Do ciklushoz. l'r, ellertOOi a fel t,jt .. l-I. ~ ha al 'I'~ue e ....0mtn)1 ad. "tgrehajl;" a ciklus lrul (az !ltadtA.l -Ut"" {tAsH blokkol:). MiuCin a cikluSl!7.S Ieli.uon, a program i5m& ellenrzi a f e l t ,jtel-t, s ha mtg mindig igaznak \al~I;a, jrJ "tgrehajlja a ciklus tns. Ez addig is~6dik, amig a felltel Fal ..e eredmfll)~ nem ad a dklUSll'ZS v~hajt!i53 uLin. A Do ciklusok gy is fell'pthet6k. hogya ciklustr7.s addig i.srnt16djn, amg egy fl"ll&eI v~gl igaznak nem bizonyul. A Do ciklusnak ez II fajtj:!. gy fesl'00 unti l

feltlltel

Ut ... itll.l Utasit45;

A fenti cikJusf= m(Jkd(:se a kvetkez: a 00 ciklushoz crve a program ellcn6rzi a fel t te1t. s ha az Faloe. "grell:l~ja a ciklus \f7..;;& (az ut /JsltAsl -uc;lBJcdsN uusit.:lsok:u), m:ljd jt:l megvizsg11jlo a feh('tdl, s ha "*8 mindig hamis, fol}t1ljlo a ciklus ism{-llb\ - "pen addIg. mig a felt&eJ igar. nem lesz a cikluSlr'7.s vgrehajtba uLin.A For ciklushoz hasonlan a 00 ciklus i5 alkalm.~s am. hogy megjeleo15k a O ~ 10 kZlti p;lros smokat. Ehhez a k\'etkez6 UI35;llsson Irhaljuk:Oi .. nu:ober ae Int"Ver O 00 Whlle nuaobe~ !iteage_Loeg Az. eljlr:iss31 ,n.ffi15 iil.enetme~lenli~hcz CS(.'fljilk ki a 6.2. s 6.3. pl'k.l;kb61 ~~lm~'7.6 kdot: a 6A. pHcUb;in [;lthatra

1, p.. nu.l~:

hBB Subrou""t.etmlI [email protected]"g..1IyV~1

;,

."

rrotened /luh Page_t.o.odIIlyV .. l 8ender .... Ohject.

......

S,"

ll),

.,8,

,

_ tlyM ..... Ev""u.ra., H.. ndl ... M".~}"An:lZl. 3 kimt."fl",.. kdll;ltnunk. mint am,t 1 a 6.4 ;lbcin lttunk: a 'welcOIIII! to "" w.. baite ilz....,et n~zer megjelenik, ~13tU pedig egy gomb I~th::i\. 1\ go mbrJ Iottin\V:I a 6.5. br:-. tarul'l1:l kszn ~i5SZ:l.: a '''1,,1 oa.e to ..... web.it,, (Izenet ezttal nyolcszor jelen,k meg. alatta a gombbal.

T6rekedjiink 8ITI, hogy 8 faleslegus k6eg A DlaplayH.~ agai) elprb fru.;it ...~L v.'\ltol.aCl Igy fog festeni;'rlY4t~

.,

D_ .pl.yH,....g.t8yV.l

_."\le a,

'PII'I\l1

to ~ W"b;r." rn6dosiU5t ,.tgrdu[l\" II Dl "pl.yH"s"'\lel ' eljlris ~- message (O~) nrv, :, ,inq (k:lr:.ktmlnc) tipus(i para~~ ,-r kr. dj:Irb t~ lll. outp\ot , w.. tt-c.e t. "lY .... bdte
< e5C1~ is tett(lk. hozziauunk "'SY !.Ibe! wdJe$ \'ezrl/t, ,:output 3ZOOO!i\\-aJ (ID). ilk~\'C egy gnmbot (&.uoo ,'ez,..'rl6), Ne felqsiik ",l L(uehoUl; a:t okbJ ....,.,d ~ a gorri> ellek esemrn)'k..~ sem. l-b mlndeuel ,"gezulnk, Itj.lk be II 6.5_ pkUlxon I.ithatO kdot. Ilozzunk IllOSIl!IreAmlkor ez! n oldali megtekmtiilk egy bOng5zben, Ug)-:ln;lZl ~thatjuk, mmt a 6.4. br.\n: a w.,l ec.e to ~ web81 t,,' (Izenet rWgysl-"r 'f1C8JClenik. alatta pedig egy gomb taJ:iJh:otO, lb a gOnDr~ lanimunk. a 6.5. br.l. t;lrCllnPt kelJ litnunk n)'okszor II wel"... to ~ W boit"- Zene!('''I, ilki,...., abU6! ell a fUgg"""'yt hivn3nk '""II

ris;;,kor ludnunk kelJ. hogya filgg-.-ny"k nych"1:l.rt:I. n1lileg klIlnhOtik u elj:1r.l.;okl:61_ El6S2r ls. a -, It . End _ul kuJC5.u.:I, .. k helyett a Fur,ct 1f'llooan IJOgy.ln ilJcnck az eljrsok b fUggv-nyek kz. Ahhoz. hogy en megnhessilk. elszr nzzk ~g a Page_Load esemn)'kezeJ alakjt 3 km-elkezd k6dbcln;

152 11 r6sz Ismerbd III ASP.NElt.! .p r(lt..,~ed

_ Syateoo . Evl!"llt .....

IlUb pad IByVal m d .. r "" Obj .. c t. Handl ... M ~.LOood

g.,

ByVl. E$'emo!'ny az adon eM'rrenykezel6h z kapcsold esen,'::n)'! jelent;. vagy;" amikor erre az esemnyre sor kerill. az adol.1 esemnykezelO: fog elindulni A Handl . . n a kulcssz, amely,k gondoskodik az ~flynek n eserrenykezel6hz ,,,,16 kapcsoll'lsir61. s "gy olyan kdmodul! biztos't:!nak, amelynek v8""hall~""rd minden alkaloaunal sor kerill, amikor dindul a megfelel esemny, amelyet a l!andl .." radkban hat:irozunk meg.A feml f"jlegets I("'rege, hogy

az

esemnykczclk el~1rwk,

sszefoglalsEbben n r:b'lfl:l Visual Basic '..,zkj(~; v-"rkezeteivcl ismerkedtnk meg, A ""zrl~; .;zerkezetek scg~gfvcl a progr:>mok soros (slehenci~lis) "g.rehalt"lhetnek, de" filSS"f1yek mindig visszaadMk "ab milyen rtkel, mig:oz eljr.isok soha K: Mi (l SZIIlI szl1~ Am/koreljrst ~"'8.I'fil&8'~1)1inll/k, melyi/iCI kl.'lI ilas:mlmml.:?

V: Az elj:lr:hok megh:lI:lro11isai a legeg)"'zenlbb formijukban CS3k az elj.id!i nevls Ix-men6 paramtereit, mg 3 fUgg'>nYIlIt.'ghm:irocisok a neVei. J paranllereket s a vissz.~trsi nkel is lanalmaz11ik. Ezeken az alapk\'L'Ielmf1yeken k\'1 azonban killnflc to"bbi kulcsszavaka! 's alkalmazhatunk. AZ ilyen kulcs.s7.:r.~-ak egyik csoponi~l az e1bsm~n),. s It'Ie8If'Ienll3Z l' h Si kz/lnl nekek..,,~ ASP NI!T ...'dx>kWoo Tipp: A Factorlali] filgg\'nynek egy akluSlizerkezetet kelll;ltUlm.nnL:l, amely 1-161 nlg ltalJd, o; minden iSlnt'll"ll'I.Ill'!:!"ZOfOzz:t egy vltoz6 rtkl!! a ciklusI'.1l1ow n"kvcl

"

" " " "

, , , , , , , , , , , , , , . " ,

UO

7.

RA

Objektumok a Visual BasicbenII leebe /(ltfalmbl-

Az objektumok l!s

"l'.

nszt.1lyok kZlt; klnb:;g

Objektumok ltrehozs>Az objektumok tulajdort- ....Hl:Ik ekkuonikus I""'e\ek k\lId...:.1 a ... etx:.kbbkr61.:oa.;ok klol\":lsU:l. egy a(btbJ.7.1Sb61. kepek ~t. i; igy 100';ibb. Az ASP '\n ,,~Llk f~ rsz~ben lehJt a ''"ET keretrend5zer leglclnflhb elemeit hllSW.:w;.j{halluk.. ANl'l' ke""rend~~er egy OSlJ.ilynak hasWl3clhoz eI&7.r lro-." kell homunk egy oL>,eklUmot a megfdck"i 067.t.tyb6l, :l.IlIely IlUuln\;llla ~zokalll uoJg1lullsokat, ~meJlekre mbg\ink '~n lb mir lTK'8''3n ;l1; ~tumunk, szks-'g 1eI~ d. hogy bclllil9.Jk ;lnI1.:l.k egyes tubjClonslg:.il, \'3gy meg kdl hl"nunk biwny06 ,3gfugg....!-nyeil, ~Ietve escmlnykezcl6ket kdllltoehoUlunk:ll; ob,eklum egyes oemmyedK'z,Ahog)' a 13. (ejeuud kezd6d6 r6dJen Lilni fogjUk, al A."P .... ET D:1I3Source "etM6i

IdM.'l"" lorik, hogy eg)~llrn somyi kd m':g"i~l '*Ikl doIgm;p;uk a(bth;iruokk:o.I. ~h:l awnoon "zulL'igd progr:unozni is t'8)' ad:I!I:dti5 ~dlt:lin:l.k drJsl,he~. E~ ul6bOi1 ug)';',n nem d'lW~Jiuk ~ knyvlxn. de nem ~fl. 11:1 ludjuk. hogy ~ .l\'ET keretrendru'rben :W1l'IOeI adut:d.zi.d

V3gy:lZ SqlD.!ltaJ

~r,

Amikor oo,ekrumokkaJ doIgo!unk, nfID' feladat Ulr;I 6; ujra felbukk:,": l'ldllll)'osilds- Ahhoz, hogy egy objcklUmot h.asznJ.13!OO \'t'I\eSSnk. ~re kdl hoznunk egy I*1di11)" ~ kid.nl ow.!>u6'- Ez egy olpn.sz(l~ ~, ~mdyet nundig meg kelllennOnk (egySZCT), anuk.,.. egy ~ktumra \".tn mlb(1jOnk.

160 J. rMZ lImIfkedM IZ ASP.NET'" T.. lajdQ.l$grtkk bffillllisn - Nem minden objektumnak ''aJUl.1k tubjdons:1gai. s ha vannak akkor sem bil.lOS, 11ng)' ign}-be ab.rjuk venni awkaL legIbOszr 3wnban ;iiks(oges egy OOicktum ruI3~g,linak lx-.'illtsa- ernJ~keVilnk ';"'\SZa, hogy a tulajdons:gok olyan nl'kck, amelyek al. objektum ~1!apOCit iJjlk It'f~'lSll_ Amikor efff obJektununal dolgozunk. rrundJg annak egy ""gy tbb !:Igfilgg"ny1 hi\;uk rTK'g. Le\'dez6 OSZLJyunknak ~Jcllul lehet eg}' Seml (: - kill~ - nev tagf&8'~}'e, amellyel ",lkiildht'lJk az c-nu,lt T... ht ha le......1et Sl ... relnnk kldenl ...sy ASP NI:T wclXlldalr61 ennek n osztlynak a ~~'d. elszr pld1nyostanunk k... ll aZ Q5ztalyl, ma",l be k... n ~lIitanunk a szveg, trgy. cmzeu, feb.d6 s.ms fontos tul:ltdonsi8"i!, \'~gill pedig meg kell hvnunk a send () t:lgfilggvny1, Esemel1ykczelk l&rellOzdsd - A tulajdons:gokhoz ha5Of116an az ~yek smcsenek jelen minden objektumban, s ha igen, akkor sem l>iztos, hOfff h..$ZI'L.'llni ahlJuk 6Ict'l, \;MMnd

N_

iql

_n.cIl'vald,.ily"n

fn'lt, milli a v;iI\OZlW..

Rendszenn! cs:tk egyszer adunk &Ik'ny megluvsihol el6:WK Itn. kell hoznunk:lz sql! ......,.'ld o:m.1ly egy pIdin);it, ts be kdl ;illitanunk annak, ",nL,- ,t ion i C-.ndTOIlCt tubjdons;igail Ezt:l k~ ~ k\ct6en meghi\,t\;otJllk az becute~ .... derl) tagI'Ugg.'b1)'t_A ko-.. edUk. 8tboIdalrl!

V:

az e-m:"lek kldsnH mikentjt'1 ke1l6 id6 h11:1.n nem ill mdunkban de ennek a .szokdnyas feladainak U clv'Uabpj:lil tcJ,ameuuk ;il, p&ilul mq;tudluk. hogy minden ASP .... ET ,,'eboId..l1 egy forr.iskd s~' tmlL reszll6I tpul fd. AIT.I IS emIIcl"Z.hetnk. hogy II !-IDll n:u 1fP,ll k(x\o( b "tt.e. ,'ez6i6kl)'en tulatdonsJ-gtnkekkel rendelkeznekA uteral s ll. ubel \'ezCrl6 abban killnbOZlk, arrulyen HTML-kd in Il'tre !:>ellk A [Jle",1 vez!:rII"I!rrML-mcgfcLcl6je eg)'!zcnlen ~ "ezrl6 Text tul:oidonsgjnak r!,ske: c/:lX1 szemben II l.o.bel \'Nl...t6 SzlllOS fon"h~~llu13jdons;igg:l1 bIr (Backc"lor. ForeColor, Font SIbi, ~mdyek rncghatlro7,7.;ik. hogy:," kell ITIl"gjelen,tcnl II "el&l6Text tulajdoos1g:Ol

a. 6A Al. ASP.NEl azt'IIJMJi

t

lied \

fi

Ili 1171

Ebben az r.iban megnUilk. hog)"n lehd huznllnl en:l kb. \..,~: megIlInU1lUk. l1(8)':ln helyezJletjilk el6k('\ egy ASI' "ET webOokbloo. ilk1\"e 311. hOogy mikffil;illul\J1tjuk~:I luI3fdons;1g~ik;u

A literal vezrl6 hasznlataA luer.l] n:ztrl6 egyike::l kgegysu-nilX, ,,-ebe5 \n..'fI6knek. :I neki megfelek'i HTMl,. kOd u~':llUS nem m.i.s. mIfll:l \..,-l.ri6 Text ruL:..,dons1gir1llk h\cl;::e. A vezrt6 ...!leIked.!-$l,...,k ~let..:S.:-re houunk I(:m, egy j ASP"'l" webokbll LiuralC'onlrol .ut< o\=. ame1)= nujd elhel)"eWnk egy uleral \-.:cltr\6l: Mml mUl(tig, ~ i~ g)"djt.nk r:1, hogy n oldal n)"dvc \1'"131 &uic legyen, l hogy bejcllj(lk:l Place rOCIC ln ~ lox p:l1L11jr6!3Z oIdalrn A II I .ibcln !~th:lljuk. hOogy;m rest u oldal tt."f'oN6 ~zClh.," a l.il('f'"~1 n,~ hOu:\;Kli5:tucln.

" - _ _ _ ._.~

..... .

---

'~IoI" .!'!l"l~'

-_ ... _------~

.. -

___ o

.-).;

._..... ..__ - . T=

1.1. 610U/i'mlloedrllJ /tonaM'"I ..... ~ "dbct,

Gr6USdjunk meg rl:t. hogy 3~ imnt felvt1tutcI:II \czM6 van Iu;ellve, ...,. viz.."IIJljuk mcg:l jobb :d5 s:lrokban lIIJIII'l16 Propenie!o 3bl3kOl: Megfigyelhetjk. hOogy:l Uier.ll "C'lffI6nek mmc!ll.cQ" h:u tulajdonsig:l. \':In. Ez:l. ruot tul3Jdor1.!-ig bhogy 3 Propcllle$ ahlakban me-gjelenikl:l kO'l'elkC'z: \"isible(E:o;preo;"lOn~l

Er1llbleV K!'Io'Sl.;ite

M"""

00)

!'.bben az 6r:ib:m csak az IC ~:I 'l"ext lulajdons;i!(g:ll doIsozunk majd. AllOg)' ~ 4 Iccktborn W'JePI penzug); $7..1rno16gpe pkWxin Liuuk, az ID tula~81:g)ed; nev-."CI Ul", el a \"e.ttn6t, hogy az A$I'.t>.'ET ...-eOOkb1 forr.bk6d ~ hm~nk a lubjdons:gair.l, :l Lileral vcz1:ri6 Tex~ wb~g:l pedlg:lZ az &lk. ami nlqlderuk aZ ASP :-''ET oldalon, arrukor a;( M~ lekq,e~ a VbI6t.

172 I. rW:'

~ Ilf ASP.NEl"'"

I-Ia a LlIra1 vewr!6 Text rulajdonsi~1[UtHai'~zc>n ll"it')

n;l \;I1'(

IS,

l',

A ti 4~ ,t"mdows opcnkis n>rKbZl.Wt.'11 Ca Dc:.klop !*IcUul a \t~ mdow!i As=!~""k h:lu('JSZne). Ha g), c\ntOnk , hogy ezeket a sznne,'ekct alkalnuzzuk, a l:togatk bngs>.6jben olyan sznnel jelenik meg ~ ".-bold,1 szvcgellI.>lajk kerelse) fnket. majd a font wb;doru;lgnv lxii oIcbl1n taJ;lhal plu~zjelre Iotlnl\'~ bontsuk ki ~ rsztullljclonsgolCll, (A font tullljdon, ~g resztulajdonslgainak teljes listelleu egy fejku bngbz a k....:tkez I IDll-kdot kapp a Label ,-ezrl6I)Z;ll.

up .. n ld~!.abe 11 .tyle.! ont ! .... ly: ..... 1a l , font - ai u, 22pt , _ font-Olyledullc,'~WrklnQ" \:IitI> the Font pr""",rtie.~I.p.o.n>

lia az oldalt llzooh:ln egy fejletlen ~ tltrflk ,-"" II Label vez&l6l~ k6zit~ HTML-kd rg)"Uen1lf1Ml-.c:lemckkd adp. meg II SlilU5bd.lht.i.wkat, vabhog)' Igyo_ pn>perlieUlf',,'>r.In szksg, hogy l1:rehouunk "f(f ubel vczrl6t. s a Vi .. ib1. lul~jdon.-.Jgl kns.lgol< n~kl'bl'nme8h~ldfoZOU

iellem1.6kct

MOS!, hogy l1uuk . hog)':In h:'5ZJdllUllUk 3 Ute!':d l 11 !.:Ibel \'eU'r\6I:. k~ jllunk ~rr~, hog)' fllJ)'elmnkct nok f~ a ..-d>o \'C'lMk fel: fordi~k, amclr':kct a fellu.~16 ..11:ll megado a.wok ~~6re tl'n'atek_ II)-etl \'I'l'i'rl6 p&l;\uI a TatBw:. a I>ropDownli$l V~ 3 IbdioBunon. M>d6u:uonb;an ~ednmk ekk~, meg kell \izsgWlunk.llOIJ)'1In gytl~enek :adatokat n ASI'SI:.,. ..-.ebokbbk a ~10fPI6k161. ri hog)':In acJpk at a1:Ofl ken":SnI vezmlhel6k Il3m;$. A fejlellen bngbzO"k a ~bel "ezrlO" BlIckColol" \Ulajdon$lg.11 h:l.8)i.1kfigyelmeu kh"Ol

3. 4.

5.6.

7.

8.

lal I L riIIIZ 1Im.ted6I.u MP.NEToCIII

l . Kf,sztsank olyan ASP,NEr weboldah. ~Ille!y egy Uler".d vezrl6 K'gilSl'gl... e! mqdek-n', az okb! URL-if!., Ne rgiliOk al l'Rl-t a ve1.rl6 T.,,,t tu12jdons~n. h.>.ne111 a tuJajdons:1got ll. pa\j .. _Looad e5e!1li:nykczd6ben. progr:unk6don kcn:sztOJ UlblJk be. Egy okb! ltRL-11 az ~Ubbi. kddal Japh.llJUk mqt.

ASP ''ET "ebokb'unkon el kelj hdyeznl1nk egy l.!teral ,.:ebe! ~zrl6!. amelynek ID lul,jdon~g' bclUiljuk ":l!amilYe\ rlapok h:os;oI.11;;\I;;I:u ASI' SET wclx~..b.bkon

A ....ebe:U,-elem hou.adi"" helyett egy TenBox ,'ezhi6t IUSZ!lllhatunk, a dorm> helycu pedig webes I1rlapot. A wcl"" I1r1aJX>k mtl)Cfl 1{1(''rulatuW a f~;e7. s az < i npUt~, Ahh()~, hogy egy ASI',I'ET oldalon feihaSZll:li adaloka! g)'\Jjtsilnk ssze, nem kell pontQ5.'1rl ismernnk ezeknek az elcmeknek a r$;detell, dc aZ adatgyl1jtk mak~snck alapjai\'al tiszban kell k'1U1nk, C1.1'1'1 IfI051 rviden ttekintjOk az \~Uin: Ies:t "'IQkM'g - egy II Ilug;assJg hvelyk!Jen eiJrtl'n6~. egy pedig 3 te:SlSty meg;ad.1sJr~ fontban -, kl:

",oo,.

.: 6, " "8:

BHt C.lcul.tor Your He,ght (in (nchu),

A 9_I ptkbk6d qn"$Zellkn nle8lC'Jenit kt 5Wvegmez6t, egyet 3 nu~g. egyet pedl8 ~ lotsly scimil1l, Ahog) ~ ~ 6; 6,.$OIb;In Lim..tjuk, II k6dll:ln O;;ZerePII5 rmllkd elemnek ' elem t'g)'ed, nonosilois,1hw: I':In szOk,.{,g, Ahogy ~ kn!tkew rszben lleni fogjuk. az dnput elem... k n .... jel~ ~kkor ha$2.00Sitjuk, amikor ~ kQ({)nft:v,teli mez6n kivill arrA ls s:luks(:gnk lesz, hogy ,",,!.ahogy jelezzilk .. bngsznek. hogy ~ feltusznl16 befejezte az ~da!ok megacl..hjt. Ehhez ~ ellnl/tl gombot h:lsznllh.nunk. ami ~ olyan gomb. amelyre bnont\"a a felhasznl vglegesti a megadoll adatokat. Az elkld gomb! ITML-k6dja igy fest:dnput type . submit" value,"Az elJnlld6 gomban -.,jelenendd ucveg',

A 9.2. pb;Il kJegsztl"'\! ,~Itoz:ll:lt a 9.2. Mn pedig megtekmth utin a ti=lg:s a ken/'! kzOO vl!get r.Az im('flli ft.;tt.'gt.'\s lnygikai kapc;o!at. A ,,"ebkJ~.oIg:iJnak teh! fogalma sincs arrl,

hogy II feU,a~16 mit ir be a bngsz/'ljlf>e. A kislOJg.11 csup:!n annyit tesz, IlO!!}' vr a bejv6 kt'rclmt.-kre, s Yi:!sz:lad~1 a mcgfclcJ6 HTML-k6dot. A kiszolgl "" a bnges.z6 kztti kapcsolat l11 elem ne"I "" Ttkl:! egyenl&l!gjd (~) vla5ztj;l d. a ""'....bu'k p:!rokat pedig egy _6;- jel (4.).

A ..ethod jcllemz6 ~nMk rlIegluliiroz~s:lm szol~l, hogy az .:input" elemek nL'\'\)Cmeket:ht tp, I /W'oIW. kiuoll/;o.IO. c< loldft l . ht,.?Name. ScottVg.. ~21A kiszolgl ldll a kru5jelut1in lll rsZI lekl'rdf'z5 karn.klerlilncnak lekinti.

lIa a ,-,thod jellemz6t a POST rtkr... ilUit)uk, az dnput" elemek I3nalma a IrTn'fcjlcelKJt, keresZIUl kenil a ki~wlg:\lhol. leldt ebben az f'SCIben nincs Ickl'rdez6 karakterllnc aZ URL '-gn

Amr.:or egy bng$l lek'r egy mboldalt, II krt URt-hez mellu~ a tffiP-fejluket amelyek egY$leI' Slveges karal:terlncol:;_ Al eg;ii:. HTfpfejhk (amelyet az ell 6rilban ismert.edti!i. meg). User-Agent, Imely II krelmel ~ tfpustWJI szolgltat infOllTlci6tat Ha a _thod JIIHemz6t I POST rtltIlI IIitjuk. II bngsro az elemet tartalma melkttt a Post tffiP-fejlkllt kldi el. Iv. adatok ebbe keriilook. 6s niocs szksg hossz lekrdez karalderlncra.ki a 9l. pld;!1 egy elemmel, 3mel)' Tl"nddkezik action {:s ..ethod jellemrovel is. A kiegsztett J--ITI-1L oldal k6dpit 9.3. ~Ida mUI.tp.Eg~\tsk mo:;!.

9,3. "Ida Ml,

oId'lour Height (in Inch.. ),

8: " 10: "ll:12 :

Your Welght (In peunda) , dnput

13, 14,

9. 6ra A weba 0r\ep0t. 1IIIpjIi 1201A 4-l l. sorok kzttt:Jllhat - elem krlz:llja a kt elem "ction jellemWje adja OlCg az a webQldah, amelyre ~ bngbz!. ir:1nyt:ml kell, miut:!n az IlrlafXll elkilldlk. A 9.3, pldiban ez a weboldal a SomePage . htm volt. Az ilren rlapokat il( adatok 55zc:gy"jt~hez n ASP,l\TI weboldalnak tartalmazn,a kell egy u.'C!bes arlapot(~'d~ Fom!). A ",

Am,kor:l Vi5U~1 Web Developerben hozunk ltre egy j ASP.NET weboldah, a program aUlo!1llHikus:ln hozz:lad egy webes Clrlapol. lia lTI05I\frehomnk egy ASPXET oldalt. megbiwn}'osodh:uunk errdI. Sz~g is lesz r.i. men fejezetnk h~trakv6 I'!SZC erre II mos! elktszitendCl AS I'.t\1::T oldalrJ pl. j ASP,NIo. oJdaJunknak adjuk a BMICalT ,ulator .aapx nt. eI. ts ezttal se feledkeunk meg aITl. hog)' a language ... beUts~l a ViMlaJ Basic lehe!Cls{,get kelJ v:ilasnanunk, 61 be kell jell nnk II Place code in 3 separatc file jcllool'g}'ze!e\.

-_.- .... ... __

Must n1.Zk meg az oldalt a [ervezO: nzelben is. Ennek a n~z~1nek mos! iiremek keU

lennie, men meg nem adtunk egyeden wcbes "ez"n6t ""m aZ ASP.NET oIdalho~. AbprtehJ1("zt.-s bzerim a tervezO: grafikus mffiedrl- o.lrbpj:jbl II fddolgoz ,...."z.tQ.JloI < I,' .... > ele,"", keszit (8 :trL ,Jl(.'gnht-'SSOk. po!llOSiln ml b ln~1 EJ::tz ;ibm:t BMIC41eulator. ~AP" oIdoll az ul:!n mUlalia. hogya mas:.l!;I -

(",mJI. ,. fliJlJldlr1* .,,:: .1rli>pol

Bul:na v41u... CalCUlat. BHI' _ Id.btnSubait" i>

21,2., 2l, 24,

Nzzk ,'gig rl'szklesen, mi too('11I, hog)' jobban megnhessk, mirt jn ltre nm IITML-k6d a TextBox vezl'rl6khz az rlap elkldse utn (9.5, plda), mint az elkl1ldb el6lt ta,en ul.1lju k magu nkat . .:I.Z esemt'nykezel miris luejU v:\.:cl.n.l. amelybe rgtn be i~ matjuk " 9.6. pld;.k6dj.1!. Ml uL1n benu k a kdot. nuii k meg u ASP.r.mT oIdJl! II ~ AZ oIdJl eI.s6 betltsekor k"" Ures S7.vegmezt kdlljtnunk. WC{\e egy Dleul"!e 1:1:>11 IclirJ!(! 80000 A>; oldal cls6 bftl1 6kori kp(-t II 9.11 :lb...~ mutatj:!.to ..... _ ........

....0- ,)r __

. . ..

9.11."" '

Ha tudni szet"etnnk. mit jelen\ellet: az egyes tQsnmegllldex~et. l6togassunk el a ht tp: /nhlbi support. e Olll/l:xl.i 'blLl e a I e . htm OIdaIr.i. Rviden sszefDII!alva: az egszsbges tesnOmegIndex 18,5 H 24,9 kl8 e~k. A 25,0 s ~,9 kl8 e568MI-veI r8fldet.az6k Ilsiiyosnak $lmItanak,

mIO I

30 feletti rtkeket kapk

krosan

k~r1lk.

(A tesnmegindex-rthk az atltk s az idsek esetben nem

mindig ~Bl6k ~ltOXlldan formban. 1

l. 6nI A _ _ 41Ipot

.1 213

.~ ",

.

He. BNr e al , lat o r .""'PI< szo.oegmez6ibe rwm egkz 6rtteket irunt. Il CirIIP eliildsakor hibaiilenItet kaPIri., ha pedig negativ ~t lI!kri; ~ I m.oas"o s a testsfv rnegIIettWozs6nl. a kismftntt tllttmeglOOe)( is negativ mm lehet. A 12. feJtllltben "Ini fo(lll.t. hnqyan Iel!&I eov kl6nlell8l webes vezr16 segltgjvel biztositani, 00gY felhasznil6 ltal megadlJtt adat mevfa1e16 !OrrMjU s I kiv,", 6rt~t~ n61tqyen.

SSlAfoglalsEhbm n 6r1ban azt \lzs~I'\lk nq, hogy nuk..... t Id,,'\ ~ fdh~s.zniIl61 adatok:;,t g)'ltcni n ASP... ,,'cboIdabkon, Azzal kezdlk. lJORY """g"merll. hogy a fe1l1.~smJIl61 ~dllQkat ki-rhes.$tink, ezeket ~ velrl6kct egy wcbes {lrbpoo kell elhdyeznilnk A wdlS OrlJp a~ ilrl.. p. eg}'.szc:rikn duplin kattintunk a ,~ K'f\cdl ~

\kll:acs;uol6 6; a7. tir.lnyit6 rbpok kzn? 4. Milyen tipus.:; rlapokat haszn~lnak n ASP.f'-'ET webe:. rlap)'!'?

Vlaszokl. A GET ertekre ~Utou mathod ",lIern/mel bir Ilrlapok:l beirt ad:llokal egy lekerdez6 karaktaUnoon keresztl tov~bbitpk, mig a POS1' mdsze" haswil6k POM HTI1>-fejlccken kM"SZll. Amikor lekrdez6 kar:okt"';nd>an adunk t adatokat. a k:m.kterlnc megjelenik a bngsz cimSes iJrbpok haszn~I~I.:I,

10.

RA

Adatgyjts szvegmezkkelA 1('(;.., tar1almb/:

Tbbooros Sl:Ve8~z6k ltreho~sa Jelszmez6k lrehozi5a A sz'o'egmew oszJop&Ztim.:nak mcgh~lrozisa A szveglTK"z6be berhat karaklerek szmnak meghatrozsa A s7.\~gmez kin1.C1nek meS'.:lltonatJsa II betiImret, ~ betlipus s a szln m6d0slb:i\"3JA 9. kckRx'fl azt ~g111Uk, hogyan gylfJllldOnk II felh:lszn~l6kt61 adatoka! egy ASP.NIT weboldaJon keresznll. R\',de-n sszefoglalva: ahhoz, hogy felhaszn~16i adatokat fogadIwsunk. egy ",ebe; urlapra van ml~nk. "",eiren bdl a felh:w.n:l wroes ,'ezrI6kbe rhalj:;l a k\~nl adatokat.Az el6z6 6cloo.n p6dak('nt egy oIpn A.~PNl:." okblt k'::-szilcunk el, amely II lesttmegmc!e,;e\ ~1mJ!ia ki. Ezen II weboldalon a rclh:lszn~lru1k k(1 ad:uOl kellen megadnia:

II

ma~gl

s II

I~Jyt.

A7- adatok bcir$:l1'1l kt Te;ttBox vezfrl6 szolg1lt.

218

Iu. rW '

~ lI!IBtOt ~ .. f""''9'"

II TextBol< \-ezrl6nek szmos tulaldort5:l8" vall. arrn:I}-eke! bd!ltva szablymhariuk ~ sz'"egmez6 kinz 5, Untitled P.. g~ 6,

l, ' fona.l' "".. bod, pon .. ct! ony T1o;x tBcx Pract ice . aspx' _ Id.'ro".I',.

",ll,

10, dnput type c' hidden n""",._VIEWSTA1'E l

11, 18,19,

Your

a~e, type='te ~ t' ;d~'age'

",21 : 22,25,

dnput _=oag,,'

....-~btnSul::mlt

23, 2~ ,np..t type, "hidden' .........,.' _E:VEN1'VALlDATlOO' _ ld_' _~mrvALIDATIOO ' va l ueo '/w EWBAXu6""'lBA~7uPQdAtCCr6oCA8 _ lt!..lt4039d7pTr.,tC5H.'Q:haM1'gctPugho. I> 26, 21, 28, :t1Jo>; es~' Blillon.~ IUr/aI_lZ

A jelsz6mez6k rtkej visszacsetolskor oem 6n6dnek megA jelsz6mezk a ",eboIdalakon nliha nem

gy viselkednek. ahogy v:irn:nk. II finom ...

go!< ~;remlltetshez teklnl.Sk meg II PassW:za meg. hogy a PoIIsloKcd rtkre ~llitOll 'l'extMode tuJajdonsggal rendel kel':; 'l"extBOx ,"C~rlk TextNla~ga

nem jek'flik meg a kimenaben

gy havonta egySlllf mindig akad ~alaki. aki valam&lyil AS~NET hlrcsoportban felteszi a kvetkel krdst .Mi az oI:,a amat hogy am_or beflltol egy je/slt egy TaxiSox veztl Text tulajdons,gllbllll. az nem jelenk meg. amil:;or az oldak egy bngszben nzam mag?" Most mt tudjuk a vlaszt.

ATextBox vezrl6 tulajdonsgaiEbben az 6r.iban eddig qo"t'IJen lulajdon..:igol vizsgltunk meg kzelebhrbsoros sZ\egmez6knt vagy jcJsl6nlCu5kbll. "'2 flI htr.dc",':; rszben 3 Tex!Box vezrl egyB.> tulajdonsgal .... 1 foglalkozunk

Aszvegmez6 hoM.ak meghatrozsaA TCXlBox vezr161 id6nkt,nt oI~':.ln ad.llok SSZCg}1Ijtst:...e haszn:\ljuk, nunt a felh:I$l.lI6 Hetkor.:a v~gy a l~khe!ynck. pliliul egy ~"6 ~egme7./5 aronoon (~hogy a 10.4. ::bcln is ];'jttuk) sokkal n:ogyobb a sziik-

"""""

.

Szereocs&e meg~dh:lliuk. h::;ny ""2lop 5*I~g leg)"en a uvegmez6, mgpedig a TextlJox: vezrl6 Co l UIIOI'I8 tulajdonsginak bellt~sival. "'z emlilC!! Nlajdonsig mkdsnek v.emlllCleshcz nrissuk meg a '!'e>< Prect iee.upx ASP.l\'ET oIdJh. amelyet a lecke els6 pld::jtxm kszlettnk el (I$metWtef e''8gCl forr:lsk6d a kvetkez6:If ... Texty~

'Az a 511h:II, a ChcckBox \'ezti'.d tell60~gy Zet. amelynek bejell6b'el '-dg)' a I>ertne lev(! ",l trlk;cl igen. flCItl tpus vl:m: ad. h:ll6, "- RadioRutton ve~ pedig egr be)ellhet ,':\b.w6gomlXll hoz ltre. Ez UI6bb;t ~ltaJban CiOpOrtb:In ha.'lm11j:k , amelynek egyszerre ~k az egyik tagja jellhel6 be. Most, hogy tudjuk, hogy a felhas:zniJi adatok 8)iIjl6re tbbf~le velkrl6 is rendelkez'sre ll. bizonyra kv~ncsiak V'~gy'-mk, hogy nukor trdenlC('; a TelrlBoxot, k mikor a tbbi \"ezrl6t h~$l.n~lni. l'ffis, a11, hogy melyik welJ vezrl6re van szk,;,tgiink, " bevin informci jellege ltat~rmz:l megA felhaszn:l.l6k 11l:l1 bevihet6 adatok klnfle lpusokba 5OfOlhatk, Al: albbi 05ztlyo:cls an ,..,szi alapul, hogya \':In adallTK'nnyire szk t:mom.1n)'bl ,';\bsnh;1!6 kL A Icgszakebb csoprnttl haladunk a legtagabb feJ:

l. 1genmem Wilasz. 2. A lehet65gek vges hSl~j~b61 kiv!ilasztott elem. J. lt.:rJ:1OO1i szveges bemenet.

AZ el-.6 C:'iOPOIt ('$;'tOen C$lk k~, v;lbsV'sij leht''1IIt0n &Mar pd,t-:ddhotjull ""3

... II ...... ]

-- .- li1uc/C"'''','""'fI!." is n'grelujlson, amikor elkOldjllk ~-hen En" kdot" Bunon \'ez&1t ,t . I8P>< oIknJ, '''gjllS 37. elso'! jcll6ntgyzet 'l'ext tulajdons:1ga legyen vanill/l, 3ror\O!it6ja pedig Yen a fel~16 egyszerre esik egyel v:llaszthat,. megadott 1ehd6sl'gCk kzl, a ,..lIoogyzctek alonlxm tbb elem kMHaSZlsit is 1ehet\t tcuik.Je\I6n(-g}"letl.1 a CheckBox "'ebes vezb1 seglSl'~'ri hozhatunk l(,u-e. A RadioButtonhoz hasonlan a OJeckBox ,t'z&i is rcndelke7jk Checked tubjdons:\ggal, amely jelz!, hogya ;ell6ngyzetet bek:apcsolt:lk-Textl

v:

A k'flyfi lista minden clC'fi)ft ~'SY lGIt hasznlhatunk. \'.II6zimI1cg a ,';'ilasztgomb a lObb megolds, men aZ ehhez hasonl6 intemetcs ~ttkok Itnyeg(>bcn ki\'&el n lkl Ylaszc6 gombol v .. litl .

"" "

. . ......O - O

-.

,_ .......!l; (~

.'.

.....

--e"

t _ _ oI _

--" '...... _

,--l

.

"

J

---l ,,~

12.9. ibrI0'::''''_'~'_ " """

Az .irlapol rr.'it.) .cIcrz ,.dmoil n)'ujlolltJlJ be

.....T_ _

0-' 0

-_..... . .....

_ -"

.!l i] ~,, -

"

-e_ ..

....

l

-" .

---"''-_..1"'..... 1-

12.10. jinAz e/ktll(/, r7tWp minden "JC%je m.mp adalOlIOrlalm=

fu :lilfutjuk a kMx, Itthatjuk. hogy ha a Pag6. I.Val id tubjt.:lomlig &1tke True, az Input. i . valid CA bemenet &vfnyes) $W\'egeI ~Ijilk meg, mb esetben viszonl. 32 Input 1. not v.lid IlZenete! CA be"otnet bvtn},elen). En a ~lket& mUl:llp. :I 12.9. s 12.10. :libf:l. Az els6n a ValidltlonControlTeat6ed.llpl< oId:.ol akkor ~dUI6, ha a feJl~16llgy kIIldte el az Urbpot. hogy semnulYefl adatOl r>em tn a nk ~~. Megf~lhelJk, hogy az InpJt I. not v.lid Iltenet a ...'ebokblte!e)&\ jdenik meg. A 12. 10 :libf:l ugya...,a az ASp.!\'ET oldalt mutatja, miut:lin a klhaszn:lil6 bert \-abmit a n(:o,1nC~. ts jralcillli az GrbpOl.ln az Input b v.lld tenet ~t

fu az oldalt egy 01)= ~ tekintjk meg. amely t:limog.l1p. az gyf&.kbli parana;f.t~t. val65znGleg r>em kIIldJleljuk el az GrlapOl addig, amig valamilyen rtke! nem inunk a n-vmez&e. Ennek ob az, hogy az ellen6rz6 vezr\6k oIy~n gyfloldali kdol hozn~k l~ne, amely rvlT)1elen adatok esettn megakadoilyozza a ~tol:liSl. Az gyfloldali par~naf:liilok;tt timog:lt ~ le~l nem fultatl1k le a klszolg;1loldali eliek e5Cn~,yke-zd6(, amg a felh:Lsznjl6 &\~yes adatokat nem ad meg. fu azt ~k, hogy nUI~ ke-.'s fen~16 ~enk i\g)'aokbJi par:ilfICIf:lijlolw nem Wnog:;it ~'d, feimtridhet bentnink, hogy ~ ,-:m-e eg)'iI~ :I Palle.hV.lld tulajdonsig viZsgibi:lira a 8OIf1bCliekesembJyk~. No/;, igen: mlndi,g elko6riUOk az oldal tn-~)~. mielc:itt fell\asznjl6 :liltal megadou adatokkal '~zntnk mG\'deIcket. mefI a !"OISi\zindulatO felhaszn:U6k knny~ megkerillhetik 32 Ogyfl:loklali clleo6rztst. CA 12.9. ~br~ e1k!szit&hez gy :limtOltam be az Internet Expk>mt, hogya http,llloc .. lhostdmetllltonhelykmtkezelje, ezn a bngsz6

automatikusan megakad:lilyozta aJavaScripl-kOd tosra akkor is, ha a n(:o,1nCz6 res \'OIt.)

fu~t,

Iehd.~

adon a visszaCS3-

a bOng6z.&ben ing)= a renddkelt:5O.nlc:Won gyftloklali e!len6nbl pedig tekinuk ktegbzttmdo:. Pggoetlenillan61, hogy a wd>helyOnkre lJtogatk milyen bngZ6t ~lnak, mindig \'i~ljuk meg aPaIIe. I1Vllid tulajdonsigot, mie!6tt mGveleteket v~znnk ~ bevin ~datokkal

~ogIah-:&, mindig ha~nk,~ ~16okb1i elk>l6tz:6.1.

Eddig

Requ,rec!F..,ld":didator vezb16t, iller.-e :ilt:oUboIn az ellen6n6 \~%b1k kzs tul~Jdoru:ligai! 5 swlg:tltulsait. MleI&t 1lg)-eImOnket a!Obbi eUen6rz6 \'e7.bi6re forditarulnk, foglaljuk O!i.ue, mit ls t:onuhunlc eddig ezekKila \'ezbi6kr61,~k ~

El&zOr is, nunclen ellen6rz6 vez-r16 eg)'etlen beviteli vez-r\6t vizsgll, amelye! a ControlTOv.l1date tulajdonslgban ha~rozhatunk meg, M~.sodsl.Of, \'\llamennyi ellen6ro'): \'el~ van TOC~re tulajdonsgot pe~ 50 ...... K! ComlW8Validatol' ~rif16 hasznlata Ilety.n azt is megtehetjuk. hogy egyetlen Rer>geValidatO!' vezrk'lt lIkaImazunk. Ezzel a v.zrl6vel ft kvetktl6 rszben ismetketlletilnk meg,

IblYqjr veZrl biZlOllitja, hogy mindenk~ legyen bevitt n:k egy mez6ben. TdJ;i1 ha azt szeretnnk, hogy a feLltasmil6 felttlenl megadjon v:dami Iyen tr!ket 3 gyermekek mma mezl5ben, chIlez a mez6hz 3 Compare\'aLidator meUetl egy RequiredfleLdV:r.lidalor vezM6t is hOZZJ. keU kapitsi sd.m lehet pl,jjul ~ kvctkem 123-45-6789.

Az. ellen6rz6 vezrl6k eszttikai tulajdonsgaiAhogy a Jcck~ben tbbszr IS l~ttuk. amikor a felhaszmll6 tl'\61)llelen ~r1~kct r oc, a megfelel~ ellt'nrz6 vezrl Er rorMesg"lIe rulajdons:lg:\lxm megadott hiooilzenet jelenik meg. Ez az ilzenet minden eddigi pld!iban piros bel'kkel jelem meg, de 32 ellen6rz6' vezrlo%: eszttikai tulajdonsigait bcillic\'a ezen \o'iltoZ!atharunk.Az. ellen&z6 vezrlo%: is ugyaruzokkal az e.Zt~;kai tulajdons!igokkal (BI',\'cgmezO mgl: Irjuk. a Thia text "weau right after a text box (Ez a 5ZO\'cg kZ'rt!enl egy SZ\.egmeztl mgu ullh;u6) iIZ\'Cget, A 12.20. :ilrin Ulh:llfUk. hogy:ln keU ekkor ~ie a \'Isu:IJ Web I:le\eloperroek.n

........ ---- ....... --" , __.~_~

.....

_~

....

...... - .:0--_......--_

1

_ _...._, ..... --

-

12.20. jinA '"'~ /flt

r"",,,,,,, 'oai'rl6l tl(Jruldo az okkJ/JI()%

1\\'elk.cztl J(:pbkl:nl;ll Tal80x \'C'ztrI6k ts a ~ k~ hzzunk qo'..e-gy Rcql.i1redF1CId\alidator ,~z&16I:. (:s llilSUk azok ' ontrolToVOIlldate rubjdons:igit a megfeleki szo,'rgmelJ('l aronoosiI~ra,:az Enor14I.Ng" tula~8 rtl:k.e pedig legyen Thl. de.on.trata~ the dl ffeu'lIcel bo!it~ StatiC "nd Oyn.uo.lc Dltphy (A >!lililrus s dimurukus onegjelmtfs kZltl killn~ $ZCfTl1(:jlelbe). Ez u1J.n ~lItsuk ~z c8)'ok RequiredFiddValid:uOf Dhpllily lula~git Oynam.ic-ra,;t mslkl:l pediS hagyjuk. a SUt!c &tl:k.cn

Wgl h:uunk egy 81.111on

\'C'z~ mmdkok~brin

!W)I'cgmelJ('l al:I. A k~)'6n ckkor

oIpsmit kelIl(llunk, monl a 12_21

286 1U. r6sz FeI1eIZn6I6i lCIItOk ~" fIIdoIO''''''

lZ.2UbnIflt m.t. ilii R('(jUlrodFk/dll>/idalor ls surepe/

Most nuOk meg a DynMUc:VsStat ic ...... px oIddl a bngsz6nkben. M.egfIgyt'lhe!jGk, hogy az a Requill.'dFiddValid:uor vezrl6. amelynek 3 Display tulajdo~t Stat ic ~Mken ~'tUk. a sz.,.'egmez6t6l. 11vol jelenti meg a This Ilppeara rig-ht a ft .. r II t.xt tox szvegeI. A kimatlld hely a vererl6 hib;t(1zenel&;ek helye. A oynami c megjodentsi bdlltis R""luill.'dFeldV:aldnor ve~r16 :aronOan kooe!lenGl:a 5~'egme ~ utn jelenti meg azemlile!l ~l'\.eget. A:l. okblt a bngt:;Wben a 12.22. ~bra mutatja.~._.

,.,

..

~

""-_ ...n. _ _ ....... _

12.22. ~Az ares IenIW CIIIr.:I " RequlnldAddI'alld"lOr..,,-hI6; ,,1tU'I)~.n Dfsp/IJy mJajdonsOgm:1gban megadott hilxrilzCTII.'t I!{)/ra nem jelemk meg. filgget1enlll an6l, hogy a ,i~glt adat n'n)"eS-C. Jogos a kcrds, hogy mi Wikseg lehel elTe_

Az egyik ellen6n6 \~1.bi6. :.IlTleUyel fl('ffi rogl~JkOZlunk r6z/ete;en dlbm a fejezetben. 3 VJhdauonSllmnury. amel)' kJina n ~ oIran. a "ebokbJon 5Xerepl6 eJlen6rz6 \~1,!rt6 I::rro rMftua!l. tulatdons~l, amely ~I'\'nytclcn be-

menetel. jelez. H~ ~'5ZOI11 minden ellen6rz6 ~ez6i(,! Illegjelenti :I saj:ll hlb:lz,,lle1et. ts a \ ahwllonSumm:lry is kirjo. azokal. akkor mondt:n hibaOzenet k(uzer fog sze. epeLru;u: oIcblon, ftt a \';tliI1I,,.,~unk, ~me/}' egy oIpn IOgp:na ~dalb:1tis-k.,~clo'l. ~n~l}'ec II \'i5ual Wel, Oc\dsil\;i1 f1'I(')o(b;itjuk, :lZ ASP,NL'T oldal bog6.l:tibe \'::d6Ile1Ohlo[!O'

".,kot hib:lllzenelet k:!punk (Iisd a 12,5, brll), Ennek 3Z:lZ ok:!, hogy az dlen6rdi \'elrl6 Cont ro11'oVal idau Lul~jdonsga nem fri.\.sQ1 ~ulon1al.ikusan. 31l1kOf megv:l1tuzt;LlJUk az ltaluk v~l! \'1:7.rl6k 10 nda~g;il, Ezrt lu egy \'ezrl6 al'.Ol'105it6j:\t uu!.;in m6doMljuk, hOSY dk:oon6 \=trl6ket vettOnk fdn oldalra. nundig elk:n6nUOk, hogy a l".QntroI1'oValldat .. IUlajdons;igok a megfclel6 \'e~ akTWlilI azonosiTj;a1"'rt;lIrn:u:dk~

--IMUblO 10 _

'ctd~n~'eknck

A l\a$ZnIt bngut61 fiiogetlinl mindOfl.....00rz6 vezrl/l 'i&grehaft kiszolg6toklali elen6nst. vagyis III i9YfIOIdeIi panlocs"ilDklt timoQllt bOngz6k tH~ mind ~!f~. mIOd gyIiWoIdIIi ,.mm IMhHk.. A kiszolg6loldlti ltIen&rre lIllIft keN SOf lIkkOt il. ha II oldi] -w1iWnt gYIIOIdaIi eleni5rrist is WgrehIft. lI.t IZ ut6bbil !eiMn ~ ~ IMllIaIwt kerlni - csel:; kl kel kapclO bCng&z6bIn Jw.scnptt\'IooItiItAz i1(O-f&llcbh elLrn6n.S Jrgr6bb rI6n)~ l6tz:6.1.

Eddig

Requ,rec!F..,ld":didator vezb16t, iller.-e :ilt:oUboIn az ellen6n6 \~%b1k kzs tul~Jdoru:ligai! 5 swlg:tltulsait. MleI&t 1lg)-eImOnket a!Obbi eUen6rz6 \'e7.bi6re forditarulnk, foglaljuk O!i.ue, mit ls t:onuhunlc eddig ezekKila \'ezbi6kr61,~k ~

El&zOr is, nunclen ellen6rz6 vez-r16 eg)'etlen beviteli vez-r\6t vizsgll, amelye! a ControlTOv.l1date tulajdonslgban ha~rozhatunk meg, M~.sodsl.Of, \'\llamennyi ellen6ro'): \'el~ van

f __ _

-

"l1l~~~-

-

:-e ,

,. 0-T...

-"I I .,.,....

-_........... -

_ol_-I,. ""''''''_''__ 100._12,13. 6braln.>bl)feilonden oly:m rtk. ami nem egkz sziim, nem O VlIgy nagyobb O-n11. Tvnytelen bemenemek min6sill. Ussunk nlliny I*ldit:

218 111. r6sz FIIIasmM6i ldItOk m!~." WdOIgO'.' Srou

-4

3,456 Ca vessz6 miatt rv~ytelen) 3.14159

,

O

3456 45533A gysllllsbk sz6mr. C~ lehet fe1&6 korItot bellltarti, Bilonyossg{lal 18k~lelezheljiik pldul. hogy senkinek sio Compare\'alkbtor vezr16b61 ekkor kell6c kellene hasznilnunk, eg)T{ II I2rtOfNny al~ h:itlr.:linak elJe~ (Gruter'rhanEQual), egyet pedig a fels6 kort:1l vizsg:lbtlr.> (LUI11>anBqual).Amennyiben a IlIltOfldny al.56 & feb6 h:il:1rMtke :llland. kl Comp;If~Vahdator helyett ~lhatunk eg)'elJen IbngeV:.llidator veztr16t is. Enndc: a kJ~I:ls;1r.11

a ValldationControl,-,.nBe;Ofl!6a" a RangeVaJid:llor vezrl6nek is van egy Type tulaj donsJga, amely megadja. hogy milyen ~dattlpusnak keU lennie a bemenemek Mivel az letkor mez6ben egy tizedesjegy nlkli sumot suretn{onk kapni, illtsuk ezt a tubjdon~goI Integer-re. M06I mr csak annyi ' .. n hjtnl. hogy megadjuk az letkor mez6ben elfogadhat ktl'kek tan~ny:\nak als s fels6 hatir.1t. Erre a R2ngeValidamr vezM6 ML'I! ~ Cu5tOm\"abdalor \ezl16 h:1.51.nlalJra: a bemutatou ,.egy vezl16 ~Ital!ioon elegend6nek biWflyul Ha m~ a C\l~om\'alidator kpe55an a klflbz ellenrz6 ve~rl6knek ~hc:t6en nundez mr a mlt_ Ebben a leckben ~gy ilyen \"ez-rl6vel i.-;rnerkedhcttOnk meg: a RequiredfieldValidator, a CompareVal;dator. a Rangc\'~lidalor b a RegularExpre..sionValidatCJr vezrl6\"eI

Ez a figjt a NoIle rtkre ~lIitiuk, az ErrorMesAag" tulajdc;>m:1gban megadott hilxrilzCTII.'t I!{)/ra nem jelemk meg. filgget1enlll an6l, hogy a ,i~glt adat n'n)"eS-C. Jogos a kcrds, hogy mi Wikseg lehel elTe_

Az egyik ellen6n6 \~1.bi6. :.IlTleUyel fl('ffi rogl~JkOZlunk r6z/ete;en dlbm a fejezetben. 3 VJhdauonSllmnury. amel)' kJina n ~ oIran. a "ebokbJon 5Xerepl6 eJlen6rz6 \~1,!rt6 I::rro rMftua!l. tulatdons~l, amely ~I'\'nytclcn be-

menetel. jelez. H~ ~'5ZOI11 minden ellen6rz6 ~ez6i(,! Illegjelenti :I saj:ll hlb:lz,,lle1et. ts a \ ahwllonSumm:lry is kirjo. azokal. akkor mondt:n hibaOzenet k(uzer fog sze. epeLru;u: oIcblon, ftt a \';tlidelml s ingyend acblb:llis--kezcl6 rendszerek Acbtb:izisok s adatWlLdbljk IttrehoZlSa II MieJOSdt SQL Sel",er 200S Exp~ Ediuonben Joz. ASP~ET egyik \qtI=znoos:Ibb s Iegh:ltaon)'lIllIl s.wI~l!aUsa. hogy az ASP ''ET ,,'ebokbbk k~ az ad:llbm-keze!6 ~kkcl val :ekken6merues qn.lImmlkdsre Az adatlzisok. ahogy ehbm II fejCZClbt,n IjlnJ fOSJuk. oIpn sroftvcr.dk;ilma.~.

ameirekel acblok hatkony troUsil':l len'ellek

III ad:l.lok:u. Ro.id=

leckben all "'15g1ljuk. hogy mik azok az ad:uIA1JSOk. s hogyan Ilrol~k ~(Ink nHt.1nY:;1I II legnP5ZerObb kereskedelmi s 1rl8)'ene5 lKblW~ kOzOJ is. de d5&arb:an II MICTOIOI't SQL ~,.. er 2005 Ex~ ..

E~ II

f.dJlionre MZ[X>I1I,,.,~unk, ~me/}' egy oIpn IOgp:na ~dalb:1tis-k.,~clo'l. ~n~l}'ec II \'i5ual Wel, Oc\dclj:ll ll1cgt.:oUI,uk .:o hllP', .lIc~O" ,tt.< ./llbT.ry/e -ul 'taqlrefl1:B_""db_7_w. "Bp

,..,se; \hd ~ B_5 ~br.t),

- _-.....

-----

--

-,,~,-~"

'

.

.'13.5. ~ Ha "Ill' adaItJ4zIsr .mnt,......"",,{ .. uWJNl}.mJ/lt6~. lk"~ L:lbI.1hm./u oszlop ne\Ig,iJ ln bOnlsuk ki a Tabl 1ll3-pp;lI, .. melyben az ,.(\acbb.LS bUhuk I~ja uWlwU, rniljd kanmlSUnk az eg.\tn tnlcen) I!I hotgylu.tk.

- - - - - - _ _o -~

13.13.6MA iJOOIl:J ulhIa

'"",,'nui,,,,1J ""'1/JCknf_

Egyel; admpuwk ~ben az adatok fomdturna is Itnycge5_ A Price (r) OQlop pldul "",ney tpuW. fl; e oozlop. VJgyi5 aZ rtktt n adatblzis-kelel szurj:l be. lIa a tbl~hoz egy pbb rekOfd{ adunk, ann~k BooklD oszlopban a 2 bt(ok fog 5Zerepdni.G)'3korl~sk"ppen ~djunk

nhny rekordot a Books t~bl~hoz:

Cn>ale )Ollr 0""' Wcbsile, Szerz6: Scott Mitchell. Kiadis ve: 200S, A knyv ra 19.99 dollM Hossz:.: 195 oIchl, A knyv utols oh".l$1$l13k "7mlhat \'ez.r\kkel ~kunk meg, a 10.6; II fejezetben pedig azokk:tJ. amelyek a felhasw:\l6i adatok SS7.egy~sre alkalfT11zhat6k. Ebben az r1ban a ",ebe;

\'ez&l6k egy j csopoen) V1:zM6ben jelenithernk meg

a~

....,...-

Az XML '410 otp:\ szOWI;f6jlok. .,lIIyIk ki:4ttleQes kdo l' " adatokat 00IImal nak. Az XMl. r*tes b.rutatu tUmrtat k/inyYiri. kanInI; ilii tbbet k8l eb "'* l1JC niIa, kernsii; MI a _.DU.!'l le. . . 'i. ~1. vagy otvI$$Uk .. Sams itJed6 T HCIt Yoorsel XML ln 24 Houn clmll ktet" (ISBN: 0672322137 ). A webhe/yf~ (1111 map) olyan XML ''il, amelyet 1lIIY bizonyos mdon fomtiztat. s a wabhely nevloki6s szarbnltfOi tartalmaz inlofmklkat, amelyeklll aztn .)IIC)Ildt:;", menk vfI/( IjI; Iorm~ itIIInIthttnk l118li- Az ASP.NET webhelyti!rkp.kezeInI s.zoIg6/tIl6sIIl. iIetW a S~ vezri61. 19. Jt,ezetbtn

Ebt.lcn ;I. leck-ben csak u aWlok ad:llt:.lZlSbl - konkrtall egy SQL Ser.er 2005 Express Edilion lld:nb1zisbOl- lnffi(; kioh":l5en mIIIden adaorri!l'ezr16 nilrke tfgl.ab plcm ,elenik meg, alllt'!yben a "ezr16 tipllSa !s azono!ift6p ok" .lsh:1I6. Ahogy ~ H.2 ~br1i1l 1:11":116. az SqHbt:lSource ''e2bll5 howadlsa utn;l. szrke ~pb:m ;lZ Sql Dll taSourlJ . ;;J.

.......

. _ _ _ ....

.,.

_---_ ... "

';J.." ..~.

-

I-~"

_.-

.... ,

=

-

-, -

-

.

...

14.2. ibn

A $zOrke t"'gLabpon kiviila kpern)'n egy gyr>eveZett o.ws cfmkl is Uthatunk. amely az adon webe:;; veZrl6n v"'grehajth:n6Ieggyakoribb m,elctekt.1 sorolja fel. Az :J.datfom'is-vez~':;k e5e1ben az oko:; cimke kezdetben t'gyedcn k-h~16sgc."'I tanalmaz. ~ Configure Data Source (Ada\forr:is bclll1ti:ll) nevt. lia erre a hi"atkoz~srn bUinlunk, elindul a Con/igure Dma Source ",,!"zsi, amelybcn megadhatjuk, milyen ad.1tokat szeretnnk kinyerni az adalb:lzisb61 Ahhoz, hogy egy adatb:ll.is ,,(l11aival dolgozlwsunk. az SqIDat;>Source n::t1"i6oek kt dolgot kelJ ludnia, Hogy:.n kapc:!Ol6djon "Z 3001hhishoz? Milyen lek:rdCzt:Sl kell kiadni" n ~dalb:lZl5 fel'

Az SqIDataSouree \"ezrl6 '":Ir:;r.,;16j:;o ennek a kllokfon(~gIi ,nformki6nak a megadst kri, m,lJUk az elrni kv:1.nt adatbl.iSl.. Ehhez egy lenyl6list k3punk. amely a Databa5e Explorerl>en felsorolt adatb:lzisokal tanalmaz"-'l. b szt'repelnif: keU benne a MyFirsr04tabllae . mdf :>dall:dzisrtak. amelyet az el6z6 6r.iban ho7.tunk Iru.. V~lass7.lJk a list.:b61 ezt az ad1tb:lzist (U.o.d a 14.3. jLrlt).

14. (q AdItOk ....... c iOIdui.,",\ 4 ....... 1321

---14.3. 610

=

A /(!II,f/(J II.eg kell nyilnunk n adalfoJT.15pcsoIati kumkteMtlC(J/

a udJhcJy bedUr'6fjljl a vezrk5 fOl'Tis.1ru.k f~llIds:igos begpeI&l'I6I

320

Az adatbzisok nyelve: az SQlAhhoz. hogy az SqlDaI:lSource \'('zrl6 kl:pes 1egy~'Il ~d:>lolqu kinyerni egy adatbbL'Ih6I, kl1 WOl1l1ci6ra van szOlc,(-ge':lZ adllWzi5 kapcsolati ka"Jkter1ncir~, lIlet\,,, a~ ~datW ZlSl1ak elkklend6lek("fderesre. A11OK)' az el6z6 rszben emJilcuilk. a leko!nlezsnek oI)'"m nyelven keU tr6dni:"" az SQL(Slructured Qut."!)' unguage),ligy adaili'i7j~ n SQl. SELEC'l' utMts..aJoIva$lLltunk ki adnQbL A SELECT trulsiw a Iegegyszen1bb furmj:Uxm au adja meg, hogy melyik adatbv5lblibl szen:.1.""nk adatokat kinyerni. illetve hom- mell' ad:u0lok kiolvas:ls:\ra hasznilj~k , j adatok beszrsa. illewe mr llel.6 adalOk frisstse vagy Irl& is clv"ezhel6 II scgitsg{vel. Az. ad>\rlldo6itls aZ lNSRRT (beszr.i5), UPDATE (frissts) l!s DELETE (trls) ulasitsokkal hajlhat.6 vtgre

Ebben a lejezelbefl kizrillag aual logIalkolook, hogy mikoot lehet adatolr;a! kiOIVa~ III SIll segitsgvel. A 16. rtl kezdve azonban az i!datbziso~ &&tainak tr1se s s.zerkewse is terftkre kerl.

Az SQl SElECT utasftsa rszletesenAl. SQL SELEC"r uta.'itis.1t arra 1\3~znlluk. hogy ntkekel ol\'~n k ki egy biwnyOll awtlXlzistbla Wopaib6l. mtgpedig az ~I:bbi formVan' SELECT &-zlpl, o,.zlop2. _. OtJzlopN!'ROlI T~bl"Nv

Al. OIIz1opJ_O;ozlcpNrttkek a Tllbl"Nv ad~tlXl.istlbla Wopa;t jellik. Ha pldul a Book,. tbla Titl!! s Author osoopaib61 S'l.Cretnnk aclltokat kinyemi, n albbi SQL-utassl hasmlhatluk:

SELECT TItl", AuthQrFI!OM BookB

FigycljOk meg, hogy ez a SELECT utasts k&t zjirndJJol tafUlmaz, magat 3 SELECT-eI, dlen is segit. Ahogy aZ el6z6leckl'ben 1.'ilhaUllk, a llitabase Explorer alJlak az a hely, ahol mcgte klnthe!lu k az C:ppen megnyilotl ASPS ET webhely adarJ:;Q1.is:til, A O:uabase Explore1'ben k:mimsll nk az egr jobb gOfllbj;h.,d a k\~nl adatw,z,s ne,'re, ts a helyi menb6] \':lIa.sszuk a New Query (j lekrdezs) Iehct6sgct. Ekkor megjelenik a lek~rdez6 ablak, amely el6$zr arra k~r, hogy jellj k ki a lekrdezni ki\':lnl c\bl~k.:il . Mivel adatbizSIln knak csa k. egy tlbl!ij:l ~.,m (eooks ). a Ilo;!.'ioon ez aZ eg)'~'tlen elem szerepel ( liszffie8 unk be egy SQI.-lektrdczbl3l SQL abbktibl:1ba, k "grehajljuk aZ!, a diagmmablak k 3. fdtotdr:ks frisststre kerl sor. Az en.>Its_rI

~

1'_

SItI.Il:C'I' Thi .. , Au' BOOk.

r

Ez:l Ick~rdel6i a IIocka !~bla minden SCIIit ,Issl.:tadia, s a TItl ... !Iletve ~Z Author os-LIopok: I'rtkdt jelenit; meg. MJUrn beinuk en a IekbUez:5l; a sZ\-'Cgmelc5be, IUjl5lJk is vgre - az eredmny ~ l ~.ll br.n UtlUt. Fi8)'eljk meg, hog)":ln \~lt()2.ik ~ di:lgr:mubbk s:l felt~r:ks:ll (q SQL-lek11WIII!II.J:

IIooks

Title o

"".. Number' >.NIl

.10

la SQr:I.lf1I vonatkoroan kell megntzn!, hogya WHERE :t:I.f1Idk felttele ig;oz~, AZ. eb6 knyv ( , is" .../ Stf"IiO lI...c.6o$) esetben azt liquk, hogy a dm nm! '!'he Number, ~ knyv lIZOI'IOI\Oilja (I, ,kID) pedig kiM'lJOb, mint 3, elM ezta kOnp'rI a f~ti liUECT Ut:l.Sw nMu~dia A k>~ez.6 kOn)'" a Crofllc lou~ Own Irros;te ennek a dme sem TIlO: Number, 61 az. aWOOl5t6j;l is klSt C!ul)'

ORDER BY Author

fl azonban helytelen:

,= " FROM BookaO~DE~ BY Author WHERE N&IIIe ~> 'Fight Club'

Rende.4S nwkv6 s CIOkken6 sorrendbenAz OItD&K Br zJl':ldk abphtclmezs !IZenot n6\oo"6 (el6re lubd)

som:ndbe ~

az eredmbl}1, de eZ:l ot:.. mdosl6val megfordthat6:IIU,lER BY ,"..,lopN"-"-Je

Ha:lZ ell."dtlln~1~' olyan

O:irudn mindkl SZ"r6kif,*"l6! megadtuk, n OK gornbra kanllll\";! trjnk vissza a Conftgure the Select SUtement ablakba. Az ablak aljin ~t1l:ltjuk 3 \'Jr.ilsl ~JtaJ elkkzleli j"krde2S1:SELECT ' FROM ISoo ksl WHER.!! IBookID] ,,_ fBooklD) AND ~ (!YearPubll alled l ~ iYearPubli8h~)

Az Add WHERE Cianse prbeSlidablak tkletesen miikdik, ha csak ew sziir6kifejezst akMunk ~, vagv 112 sszes sziifkifllje.n\st 112 AND mwlettel kapcsoljuk MSle, ele ha DR-rol wekapcso/t kifajezSl:lket szeretnnk megadni. pld6u1 azokat a knyvNet keressiil, Bmelyekllek 112 azol1Os~6szma NliIfeljebb 3 YIIg)' 2OOS-ben lIdtk ki ket. 112 SQl--lll8Sftst magunknak klllmeg/munk. El lill jelenti, hogy 8 Configure tha Selllct Slatement ablakban a Specify a Custom SQl Statement or Stored Procetktre !fQYini SQl-lltasltlis vagv trolt eljrs meghatrozsa) vlilSZlgombot kellbejellnlinlr., majd be kel fmunk I pontos SQl-lekrdezst.

338 1111, rz MriI adltb'ritnkkel

A:z SqlDataSource vezr16 adatainak rendezseEddig k! 5zarkifejezst adtunk 3 Wllf.l!E rnd('khoz, de n ll'dmn~1 mg mindig a BookrD abwn rendezo,"., bpjuk meg. Ehelyet! rendeunk al M ~g)' WREIU: es -:>ROD ilY z:indk is s1rI"q)C'1,en !>elln k6d!'L3

fon:15

n~l.1..,ben;

~,,"p,:'qlo..taSen a haszn:\land6 ~dat

romis kl\~bszW;a . Nr ebben ~ rszben a GridView "ezlorl6t t:lrgpltuk. aZ adatforns"ezrl6ket a tbbi wdle:; adatveztivd is ugpnigy kth..... jk ssze.

Adatok megjelenftse a GridView vemrlcl sogltsgvelAmikor adatQk:lt jckntnk mcg egy webold.,!on, gyakran minden rekordot ltni szeretnnk esy 3do([ lek~rdezl'Sb6l. A lckt'rdez61ehet sWikus, amilyen a SELECT fROM [Bookal, vagy dinamikus. a fdhaszn16 jltal megadott adalokoo alapul szr6kif,*z6ekkel Ha minden erecsort;s megjelent, anJelyben a nJegjelentett mez6k neve ltll:lt6. AI:op:lllajXl1oon ~ Grid\'iew 3J: adaorrls-'"eJ:rlo; minden osUop:lho? t:trst egy-.egy mcJ:6t, de eZ. ahogy hamarosan I~tni fogjuk, mcg\-:i1t0(l3th:u, Ebben 3 leckben rmr lttuk, hogyan 3dhatunk egy Gri.NET oIdaJhoz adtuk , v(-gig t('f'\'ez6 nl:Z

MIutn azonbom bdJJi11Uk II dcs adaorr.'i~1 az 01 J, 4, IQ, ll: elemben megh.>.~roWt1 OIIz.lopokb61 jnnd. I~ o.UKey_. - Ez ~ tul;r.pdonsig annak u O6Z\oprI;I.k l'..gy :uoknak u O$UOpoknak) a ne"!'Cl.luut0U3 meg, amel}'ik t'8)'t:di\cg azonBookIDellllpusll hasznlja, oIy~n mez6ket is megtelenil, amelyek a felhasZIdI6nak Jll'm igaz~n rdekesek (pld1ul ~ Book lll-I), s a d1tum-, ,Iletve pnznkek SCm form1zouak, riiad1su1 mtnden tntk balra igazodik, l ugyangy ntz ki. Szebb lenne, ha mondjuk ~ P"veCount oszlop rt(:kdl jobbrJ ignit:ln~nk . a knyv eimt pedig d6b betavel emelnnk kl. Az scm az igazi. hogy a cl", fcjltdl>:innek fog megjelenni.

S1l~apot ~ornk

nrtptyDatllTe)(t

alk:llmazni a r.ksr:l.. Az! adja meg, hogy ~zcretntnk-e v:llamil)"en lIZCfW\et kilraml

Font Forecolor GridLinell

ShowFooter Show!!e4der

abban n esetben. ha nincsenek nK'gjelentheu'i rekordok. Emltkezznk vissz:. hOgy.l GridView Ickogy a r-:cshoz kapaiOls cl6n I n101t k6dolsUvl kcll-e ~lakr\:lnl ~Z en lIlO1lO11, II

k~

II .k,Jellt:lOr" fOgillnclt, ez(," enntilI veztrl6nt1 nem tallunk selected~O'o P.~eCount478

U,15,

Lapozs s rendezs a GridView segftsgvelesJ'elIet, rekordol; jelenil meg ~Z acblfomb-,e~r J6b6I. Ahhoz, hogy" feUwznjl6 minden rekordot megtdttlllhc::s5m. Es qnesto.elA Oet~iI5VICW vezrl(! al~pJ

---_.....__OoMIh.!IrrILo!

-~15.18. 6bntA )",'rPu/)/iSJJI:d ~SortE.~" lu/ajdfms4gl /WI5IIIJk

Megvizsgjtuk. hOg)-uJn mkdik alapozjs 6; a rendezs a rc:ml'zetben, de nem k~teunk bpozh.at6 s rendezhet6 rksntzelet. IJ.'Jr f""ldit ilyen GridView-rn nem littunk. nincs ls ri szksg. men e kt kpessl'g egyues biZlosl:lsa csak annyibl ~IJ. hogy beka~juk n Enablc Pagng s az Enable Sorting jell6ngyzetet.lllapoclshol hasonlan a rendezhet6 c.;zJopok fcjlb:re kattint''a ls v5Szacsatoldez6c uI:!n megy vgbe.A Grid\r""" vczrl6nek van egy SortExp~etl8ion nev. csak oI~'aShat tul:l.jdons:Iga, amely jelzi. hogy melyik rnez6 S:rinl kelJ rendem;' A laf.'OZ'\sl e:\Cmnyekhez hasonl6:'n a fenti esemnyekhez is rhawnk esemnykezel6ket.

OsszefoglalsAz. d6z6 6rlban I:lttuk, hog)':ln nyeri>elilnk ki :>es aootvezrl6k ';I.'gitsgi... d .\tmden "ebe JdI\Ve~rl6Itn)'q!(:bm ug)"llnugy m(lklktik mIUtn lloz.mdIuk 6kl1 nokIaIhoz, e}l}' adnfl>!l1b-ve;:trl6t kell oowiuk k~pooInunk, Amikoc'Jlaki dLIOg;ltOI1 az ASI'NI:.' nklalunkrJ. az adaon5-\'ererl6 klol\"a_ u adotolcat az adatb:lzc'ibt a "'~~ a,lot"', Z:1'I6 p;..-dig n~lenlllzokal. t wdlC:S Jdo(H,z('1iZCfre csak rgy ",kordal jelent meg: ez II rekord is~' e~6x jelenik meg. oeJ

GndVicv,'-t6! elt.:r6en in u adt0fT"l5 ovJopaibl ;on ~ '"8Y.eg)' l.ihUz.u.o;or, n '"8Y~ bl:iza1SOrOk pedig k~k~ o.Wopoi tait;llm;lwak - az egyik n ad:uWu.

megfeld6 ~k nevl'l., ~ mislk J)C(hg al mek-\~zrl& k",zal ali. amely.khez a ... 'CI"", acbtveztrl6t kapcr.olni 5~nk 2, lIam;5. Az at.Si'g~v..J Adatok beszuclsa II Details\1ew "cz(>rl('i 5Cgil5gvelAhogy II 15 Icxklx:n 1.ittuk. az. ~(L1lok ,""'Sit'lenJt6c a~ ASP_~' webcs adat"OCz&i6ivel gyerck~~tk. Eg}'l;zenJen az. ASP ''ET oIdIJ", hOzunk egy Gric!View WID' Detli"'\= veZrli. b hozz.kalX3QJunk egy megfelelen \)ellitou adatfon-.O.s-n:zrl6t. Egy adatb zis adatainak megjelcnit6c e8) ,,'eboIdalon 11:lSl.OOS, de nha arra is sz~ van. hogy " f.. lhasznlknak lehet6vt tegyilk aZ adnb-17.i:1 unalmjnak " UXIos;lsill is. Az el62tJ 6r.iban peldiull~ttuk. hogyan iek'1'lhClIOk 11'1('8 II Scok.a a dalMZiSOOn !:irul! knyvek listjt. de milyen j61enne. ]1>1 " I.1tog;nk ""Fit knp"e,kct is felvehctnk a t:lJ)/jha. V-.lSY megjegyzseket: ftIzlJrolffiek egy adoll knpiJz!

lU adatok ~k:ntbe mellett:l. Gri s ' elemben kife~;, hogy a aooklD paramter egy eg6llepNtctffk hel~'re keU rnunk.

A leflti s.zablyok, amelyek arra vooatkolnal, hogy mikor ket agy osnop lirttLt megadounk az INS!':RT LIIasts snmra. mr ismersek lehetnek. A 13. letkben ~ttuk. hogylkl IIdhatunk rekordokat agy maglev6l1datb~st'blhOl a VISUal Web OIMlloJl9rben - abban a ~dblkl sem adtLri:; meij rtkeket az automatikus sorsz. rTIOls oszlop l l1OokIDI ~. iletve azokna a rekOIdoknak a szm4ra, ahov' NtAI rtket akartunk ~. ft NlAJt nem 8flgedlyllZ oszJopoknak azonban rtkelkellett adnunk.

Most, hogy tlszt:blukp{:I~t (~sd

a

a~ INSER'I' uosiLls ~ltaJ~nOll alakjt, n"zzlInk meg egy konkr!. Az 31:\bbi lNSeRT U!;l5bst az Sqll>JtaSource ,'ezrl6 \"Jr:ZSI6).1 ~1I!olta e16 16, I pld,1 2. $Or.lL),

lNTO [lIooltaJ I (Titl.,1. IAuthorl , (Y .... rPubli.hedl, (Pri",,). [1.... tR ... dOn). (Pagecount]: VAWe5 ('Tit]", eAuthor. 'YearPubl ehed. I!prlco , 'L st~aadOn. I!pagftCountl!NS~T

_

MegfigyeJhctjok, hogy ~Z INSERT eg)' j rekordot ~~r be a 6< >ka Llb~ba. s mirnkn mcz6nek mkel ad. kivve 3 BooltID-L A BookID 3zrt IlUrnd ki a7. ouIoplistibl,

men aUlomatilru$ sors11imQzs, \':18)'15 a7. rtk!' az ad:nb?.isrenW:zer lwtrozza meg(lia mfgis fn."ketadn~nk

neki. 3 kd \'grehajLlsakor hibaOzenetee kapnnk.)

Konkrt nkek helyeit al Ins"ncccmand pa ... mtereh"\ - ~Tltle, ~Author, I!VearP\lblhhed stb. - hav.n$L Ahogy az !1I ks6bbi rszben litni fogjuk, a [)et:lls\rteW vezrl .segtsgve! kThClOnk bemenefet a felha~ml6t61, :; al ~Jt:ab mcgaclottak alapj;ln ~zrh:ltiuk lx: ~z j rekordokat a h.1ur.u;btbzis tiblij:l.b:>. AImkor a felhaszn:i16 megadja:lz adalokat, a OetailsVkw vezrl6 hozzjrendeli azokat az adatforr.is--vezrl6 megfelel6 p~l"J.mterehez, majd meghj~"j.1 u adatforrs-vez&\6 besZT paranwt (Inaertca.and).

Adatok trise DElETE utasfts1A DELETE

Ulast:i5 ;Iltaklnos fonn~;a a kvetkez:

DELE'U I'II(;M 'l'lblaNv

WIlERE ""....eF.. l t4t .. l A WHERE zr.lClH nem kcelcz6, de szinte mindig szksl'g van ci, men a DELETE utastis mlno:k,n rekordot trl a Tlbl&Nv t:lblbl, am, nK"gfcleJ a WHERE zjradkrok, ezl-n ha ezt a zir.u:ll'kot k,hagyjuk, a t~b!a valamennyi rekorclj~ k:ld v:1likA DELETE utastassal u.onban egyszerre tbbnyire egrellen rekordot ~k!Unk trlni Az Sql04tll.Source vezrl6 k6dj:iban lev6 OI!leteCoaDBnd pldul egr olyan WIlERE radkkal renclclke1.ik. amely a Books tbla cl5dJeges kulcs oS"Llopn, a IloQklD-n ala pul. (Az els6clJegl'li kulcs oszlop az, ami egyedileg azonostja a tibia sorai!.)DELETE !'IIOM lllooka) WHEIIE lllooklD) ~BoklD

Egyes l'SeleldJen laztani szcretnl'nk a WHE:RE fcltleltn, hogy a DELETE utastlssaltbb rekordOltrlhessilnk. ""lcUul ha az S!7Jop.- 6; enkHsta adja meg. hogy melyoszlopokat milyen rtkre kell mdostani. A ",llereF'en)kra Von.11kozik a mdosh:s; h~ a WHEIIE zjradkot elhagyjuk, a frill[(,s a OELETE utaSI~shoz hasonloon a tbla Mze5 rekordj:ll rinti.

A 16.1. ""Ida~, sorl\Y.J.n szerepl/5 IJpdateCOftUand cgyetk'l'l rekord MZ"" oszlopjn:.k nC,kl'!. (ri",;iu 3 BookR t~blMxm. kiv'::",e az aUlomalikus $Or.;zjmoz:b oszlopo!:1l1'llA'l'E

1800hl SET [Title] = 'Tit I",

IAutoorl ~ (lMthor. [YearPllbliahe6] IIY". rPubl iabe< nven. Ammt:u kit:lWhat. ~Z az oldal a Ilo ,ob tlbIJoon ta111J\;II \';IWncnn)i knY'et feOOrolj;l, k egy-egy De\ete gombot helyez meI\jk. Ua az okbJI

ll. megfelel

mr.'glitog:l.l fe\h;oszN? Ian, amikor a fe-lhasmi16 a Delet.. gombrJ kattint? A felhaszrcll6 anny'l !:il, hogy az old:!l felvillan, ~ a rekord. amelynek tr16 gombj:i"" kmintou. eltnik Dc Illi z:.jhk a ~nf:d"k mgtt?

Amikor a felhasr.n16 a Delete goIl,\)rJ bninl. ~i=acsalolSl"J kerl ~_ Ekkor a GridVIeW'~ szJell. hogy az egyik sor Delete goml>j:irJ kauimouak. s ,-ila!;7.keppen ki1ri.ltj:l a RowDelf'ting e;emnyt. A GridV.ew ez UI~n fogja a sort egyedileg aZOI'IOSl6 '!'n'!'k~ (3 BookID '!'nH. a~ ad:!orris-vezr\6 eleml:nek 'BookIO par:lJnkethez rendeli azt. maid megh''1'l a OeleteCOIIIDIlfId parancsot. Az ad:!tforris-vezk16 eZl kvet6en kiadja a D!':LETE ulasic:\st az OlduNzisnak. behd}"~tt..... sitve a iBookID paramter fn.':;kk. A GrXl\"oew. miun az aoollIl"'1s-vczTh:'n h'1l.~ZI(l1 t6r6he a rekordot, ki~ltj:l a RowDeleted cscml'fl)-t.

Ha progrill!lOOkban m6d0sliIII Sl8relllnk a trlsi folyilmiltot. 9Samnykezelt Ilolhau.,k ltra a RO"'Oelet in\j s ROWDeI eted esemnyekhez. A RowOel et ing esernnykerel6jt pldi! am hasmtlatjuk, hogy a programbl YisSlilVOOjuk a tO!lst Ha IlleIhaslnlil pldul egy otyan knyvet WIreIne tiiriilni, Im&lyoek a Wll'lIlje Scott Mitchell, ~ megak&dtyOlhetluk a trls\. Al. fII rign ~lhat gyakorlatok lehetsget adnak arra, hogy gyakowhok a trls progranmott visslavombt.Tegyk fel pldul, hogy 3 felhaS2nl6 betlti a DeleteBook.d!lpX olOOI!. &s a The Nr""be,-cm knyv [)etete- gombjra kattint. 12 visszacs:l!oUst indt el, 6; a GriVk'w \lezM6 bzl(.~i, hogya ham13dik sor Dek1e gomhJ!ira kanintOlt~k. A vez~rlkllt aUlom:uikusrn csall oI,!U$Iu;/roni teszi, miv,,", ezek azono:silj:ik egyedileg a szericesll6 alau ll Mlrt. Mis meWk csak oI\"ashat\--:l. ltele il; egj-5zenl. pld:lull\3 azt s.:e/ctm:nk. hogy a felha)"Znl6k ne v:lkozl:uhaSl;k meg a kn)'\'ek cm!. Vgl, 3 Crid\'iew arr.a i5 bizlOO5l hcillil5okat. hogy fcleuk. mil}"en formiban kell elkldeni a felhasznl ~ltaI bein adatokat az adalb11.1Snak. Pldul ha a felhaszn:\.l Te!;Cn hagy egy karakter\~TK tpu~ meZ! (amilyen a Title ' .. gy az Author). az "dalb:izis rekordi~nak frisstsekor l\'uU rtket vagy 0= karakterbinool: kelJ hllszn:\.[ni? Ezekd II hcilJt:isokat is a Fields pi,bes~dablaklx," adhaljuk meg. II kvetkez rszekben a szerkeszt fellet t=et;zab!lsnak feni emlilet! vonatkosai\'al, i!1el\le az adal~Z,s frissts; szabl}'ainak meghattos,.. l foglalkozunk

I'"olyan mez6io:', ~meJy ~ Idurben 1=6 atbtbizisclbb dI;6dIeges!wb CNIopifl:l.k fdel oq. C$lk OI\~. Amikor,. f~16 egy sor Edn gornbj;tra csak oM5Ilal6 mezk lO\'lbbr.l i> nem s=il:esztItet6 5ZI'o'egknl jelennek nq. (Pekbk6v. nb.zk nq,. Be ~IllD """l{ II 16.6. ~brin.) Abpllapotbcln a GridYiew~'1l

""ttJnI..,.

Tovbb. mez6kd '-' megjellllCtOnk CSlk oI",..sIul6k~! C5;1k annrit kdllc!nnunk. hogy a Fields plrbesz&bblakban ki,.,Jljilk a ki~nt mez61, hogy \x:11tsilk ~ lul~~fPit ,. jobb okbJn. mor.;d a 1l.~hav;c.-("isoI.'lkli'!l) ,obzbc:lI rnegk~k a il_dC Ily niliItdonsp. l Tr, "..r:a :illitjuk (11n pedig (O:d).

mez

~jllil1isok megadisa ul:1n a Visual W~i> JX-,.clopcr lervez Iltzet{~n megfeformholI mezket kell l:irnunk. M06I IltUilk meg ~z oIddl a bng&.z6nkben, kauinl5unk ~Z egyik sor Edil gombpm (I~sd a 16.9 :ibcll). Anunl I1lhalJuk. ~ f>I'"m szerkeszthet $Of"Okb'ln a Price k a La*tReadOn m

6,

7:

8,9,

19 , 20: 21, 22: 23 , 24 : 25: 26,~7,

C~rf- pedIg O).

,,,,UM

Hillel

kaPCSOIa\bIn. lapom" \'1$$lI' 12.1ejeze1htz.M""t~n v~grehajtoltuk :il~ljukJlCIll

u.."" 1nSSitIi. lUd:ibUrUt

al

ASP.NET

C

ll wl6riwtll

fenti ngy l~. nl:uilk meg az oldalt a bnglm6ben. s

mdosl:lni a Price mcUt. lthatjuk, hogy ha Oresen hagYJuk II mcz6t, vagy pnznl'ket, illetv.: olyan pl'nz(,nket prWlunk bdmi, ami nulljn.i1 kisebb, rtelmes hiOOllzeoctet kapunk. 6; al trtlik ad:lt~ mmtbre nem ketill ~ (ljsd a 16.12, b 16.13. ;ibl'.u).AlQn kivl, hogy ellen6r'l6 ,'e~616ket ,'ehetnk fd, s m(xI05i'th:lljuk :il 57il\'cgma6k megjclenl'sl1, a s;zeri[em6 fdlcl: ug)' ts tesll"t':!iZabl~t6. hogy a TextBox veri6ka

egy nslk, jobban meg(t'Icl6 webes "ezt16re ocrl)uk. Ib ~ d~zetben ptld;iul a kOnyvek ~nek neml. is meg $lerelnnk jelenileni. tot az adatokat kapj:lk, p~ldul 3Zt.ltj;l.k, hogy a ls,.m Swdlo /lacllscm knyv sl.CfZ6jeJames Aw:ry, 6; a knY'et 2OOS--ben "dk ki. AmennyibenJi",n m6dostaru szeret.n~ az adatokat, ptldul rgzit.~, hogy a knyv szerzIils\ KW ,orzerlIle::Ii'!l mdba iIt'fXSOIfi.k

A Detalls\"te'III mInden meWjnd< ,-an egy InsertVidble r>U'I"E uta.\iti5ok;lt. ami o;Ik eg)' je1l6ol'gylet beiu.pc:soIb:It igl'nyli a '''~Z5lbanlb az SqlDataSource \'czrll5t megfclel6en 111ilouuk be, a IoCVi'I tulajcn. ts cg)' ndsik felh2m\1l6 mdosil()u;o a WI' IlIJ1;,IJrmt. Mmdk& esetben lfle8ICImithcWnk egy zenetct. lu at aJj!)bi kdol; befljuk az ASP,1\1:T okbl forriskd r!:sztbe,Protectood Sub.. IlyViOl GddVi_~t.'UeyViOl ... nd .. r As Object As gyat_.W.,b.Ul.W.. bC' ntrol Grl rvl~toodEV..,t.o.rv.)

.. Mandl ... GddVlewl.RowUpd;oted ft . Affehoz viltSOnk forr.1.o!; nt1.t.1re, k v:1La~k a GridView elemel az ablak lxII fels6 r5Zn ClUlhal lenyl~b6I.

illetve a

lI~ted ~mo!n)'

a jubb oIcbhb61.

IsmtklkrdseleullsView pedig tf1~ rsetom u It..n.let tpg. frissiu:skor az It-updating, & be..zriskor 32 J~_lTlllert 11>9 eso:mtn)1 El uw. ~-6dik a ..,ebe!. :oWt\'en-'ri6hz kapcsolt adalfornb--\'Cztrl6 mcgfeld6 I""~tC_nd, l1pde.t..c~ '",g)' Delet..c.-..nd IXlranoa. amely egy SQL.... w!i9: kld;lZ alblblrun..,k, !:>eoru'Y2, frissit,'e \'2g}' 10r0I\-e a ,-ekordol;, VtgOl 3 ,,'ebes a~'

2. A Ut-rliies.;ztffld/Ilet l/.'Stn'Uabsa s "lrisSUg egyof'lJen ditum SIncs kiielOh'e (mH ha szerepelt i~ nk a Laat~eador; mel6ben), M lu :I rupt:irbl kiv1bSllunk egy dtumot, i :IZ Updale gombr::o k:IIUntunk, az nek mmtr!Kre neTt) kenti .sor

408 1111. rz fO'UlU ~ ..Ahhoz. hogya jelenlegi I'rttk megjelen)"n ~ naptarb:m. a felhasUl1I ;lItal kiv~ laSZlolt rtk pedig beken1!jn az ~dalb;izistn. egy olyan ad.llk3pcK>16 kifejo:z~ le5z $Zks{,giInk. amely 3 LaatR"dOn mezl a Calcndar veztrl6 selectedOate tulatdon~B~hoz rendeli. ut a Calendar vezrl okos dmk6jben az Edtt Dat:lBindinjp h""tkoz;'i= kaUinr.", megjelen6 DataBindings p~rbesztWblakoon adhaljuk .neg' egyszenlen ,';il:l5$ZUk ki a megfelel6 lulajdonsgal (SelltCtec1D.ote) a baloldali li.st:ib61. maid a jobb oldali lenyl6 Jislb:m jelljlIk ki az aooomis'-ezr\(i azon ~ (l.01' nerke:whl.-t6v tL'Ielekor a LaatReadOn ~tumnak h6n:ipj:l b; \'e jelenne meg. AhllOl~ hogy ezt e!(!rjk, vissu kell trrtilnk ~ OIlendar ,'e2r16 DauBindings pMbe:.'Zl'dabbkihoz, a Visiblllloate tulajdom:igot a r...atReadOn mez nahez kell klnllnk, b; ezltal ki kell kapc;olnunk a Two-""'y Databinding jelI6ngyzetel. Ekkor ~ s:zerk=he!6 rnOifll'zelnek azon -Klrok el;C18:>en, amelyek a LIlatR ..... dOn mez6ben lartalmnnak ""lamiJyen l'nket. ugy kell mkdme, ~hogy elterveZlGk. AlOkrulla soroknl azonban. amelyekben ez az l'nk Null. ncrkeszlskOf k\'~cI lp fel. Az, hogy ez mirt trtnik, iUet\'e hogy a C:I!endar vezrl6 Seleetedo..te tulatdonsig1hoz mib!. adtunk meg ktir:ln)' adatkapc;ol.!l.st, ng a Vi .. ibleo..te tul~jdons1g esetben c.sak egyunyt, a 19. fejezet egyik tmija lesz.

17.

RA

Adatkapcsolt lenyl listk, vla