14
 CÁCH SDNG CHÚ THÍCH TRONG C#  16/07/2007 10:21 AM Trư c khi có sra đời ca Dot Net, trong các ngôn n glp trình đ! s" #$ng nhng %&h' Th(ch% như l) *+t cách đ l)* r- r)ng cho các kh.i l/nh ca chư0ng trình1 Nhưng 234 gi, 5i sra đời ca Dot Net 6ra*e7orks, thì #a 5)o nhng %&h' Th(ch%, 28n có th t8o ra nhng t)i li/! 9ng #$ng *) 28n đang phát trin1 Có 2 loi "C! T" $% &'() *+i ,N-T .3o4$, 5oi () 89() ( l; < loi "C! T D=()" >? @ 4i (;o ( $% &'() // *+i C# oB ?,N-T E <( &F &=() l; C! T, 5oi ! (;I 89() 8J $% &'() E )iKi (L() ) ; &=() l( i( ;( oB &=() 4P iPQ () i(, C=( loi ! @ 2 ( l; ! M5, C! (;I )i Q ;i liF o l+Q oB Q8U() @ V() < $% &'() QW( M5, N)o;i X (ó =( o ;i liF AYZ o @( ) &'(), SF [I l; * &' *\ < ! M5 8J <Q &'() *; Q8U() @ C#,]: /// ^$FI_ /// Ti$ o& ( $Qili Si(), /// ^/$FI _ /// ^Q (]"`o&$"_^/Q_ /// ^Q (]""_^/Q_ Qi* $i *oi& SQliSi()>$i() `o&$X a AI5i$ b  ,,, c

Cach Su Dung Chu Thich Trong C#

Embed Size (px)

Citation preview

Cch s dng ch thch trong C# 16/07/2007 10:21 AM

Trc khi c s ra i ca Dot Net, trong cc ngn ng lp trnh u s dng nhng "Ch Thch" nh l mt cch lm r rng cho cc khi lnh ca chng trnh. Nhng by gi, vi s ra i ca Dot Net Frameworks, th da vo nhng "Ch Thch", bn c th to ra nhng ti liu ng dng m bn ang pht trin.

C 2 loi "Ch Thch" s dng vi .NET FrameWorks. Loi thng thng nht l cc loi "Ch Thch Dng" (Bt c khi no bn s dng // vi C# hoc VB.NET nh du mt dng l Ch Thch.) Loi ch thch ny thng c s dng gii thch nhng g m dng lnh hin hnh hoc dng m k tip ang thc hin. Cn loi ch thch th 2 chnh l ch thch XML. Ch thch ny ghi chp ti liu cho mt lp hoc phng thc bng cch s dng mt phn XML. Ngoi ra, n cn to ti liu API cho ng dng. Sau y l mt v d v cc ch thch XML c p dng v mt phng thc C#.=:

/// /// This method can spilit a String./// /// ///

private static void SplitString(string words, ref ArrayList ar){ ...}

Trong phn ny, Ti ch ni v ch thch XML trong C#. Nh ta thy trong v d trn, cc ch thch XML rt n gin - t /// trc cclp, giaodin, phng thc , trng hoctrc phn khai bo thuc tnh.Visual Studio s t ng tng kt c bn v hm hoc phng thc cng vi cc tham s i km. C hn 20 loi th khc nhau c th c s dng trong cc ch thich XML, v c chia lm 2 loi chnh.

I. Cc Th Chnh: Cc Th chnh l nhng th m bn s dng mt cch c lp vi nhng th khc.

1. : V n xut hin theo th mc nh, nn c th n l th quen nht trong cc loi th. N nn c s dng ghi chp mc ch chung nht ca tt c cc phng thc public, thuc tnh v trng ca mt kiu.

/// /// Hm nh du mt k t./// private string MarkKeyword {....... }

2. : Th ny c ngha l m t mt kiu. C th bn khng bit iu ny bi v khi chn cc ch thch XML v trong Visual Studio, n s chn th thay v chn th . S khc bit khng ln nhng ti liu C# ngh s dng . Sau y l v d v th remarks:

/// /// Hm nh du mt k t./// private string MarkKeyword {........ }

3. : Tng t nh 2 th trn, th m t gi tr ca mt thuc tnh. N cng c s dng nh cc th khc:

/// /// Thuc tnh ny s lng cc sch c trong th vin./// protected int numberOfBooks;

4. : Th c s dng ghi chp tng tham s ca mt phng thc. y l mt trong nhng ch thch hu dng nht bi v i khi kh nhn bit mc ch ca mt tham s ch t tn ca n.

/// /// Hm ny chia mt ArrayList thnh chui string./// /// /// mt danh sch cc ch ca bi vit. private static void SplitString(string words, ref ArrayList ar) { .......... }

5. :Th ny c s dng nh ngha kiu tr v ca mt phng thc. T ch k ca phng thc, bn bit kiu no n tr v. Do , vic khai bo kiu gi tr cho n l v ch m hy gii thch nhng g m gi tr tr v .

/// /// Thay th cc k t c bit bng du cch /// /// /// Gi tr tr li l nhng du cch private static string ReplaceSpecialChar(string s) { string specialChar = @"'-%*";// Chui k t c bit ........return s; }

6. : c s dng xc nh cc ngoi l m mt kiu c th a ra. Th ny s dng mt thuc tnh c gi l cref. Thuc tnh craf c s dng tham chiu mt kiu khc. Bng cch s dng th , bn nn ghi chp tt c nhng ngoi l c th m phng thc c th a ra bng thuc tnh cref v sau gii thch khi no ngoi l c th c a ra.

/// /// C li trong qu trnh x l /// void Page_LoadComplete(object sender, EventArgs e) { ........ }

Vy bit nhng ngoi l no m mt phng thc c th a ra rt quan trng i vi vic pht trin cc ng dng cht lng cao. V .NET khng cho bn xc nh nhng ngoi l no m phng thc c th a ra trong ch k phng thc.

7. : Vi th ny, c th c s dng cung cp mt v d v cch s dng phng thc, thuc tnh hoc trng. cc v d l mt phn chnh ca vic ghi chp ti liu cht lng cao v khng c g c th hng dn tt hn cho cc nh pht trin cch lm vic vi cc kiu ca bn. Bng cch s dng th cng vi th (mt trong nhng th th cp), bn c th cung cp trc tip cc vi d m trong m ca bn.

/// /// Thay th cc k t c bit bng du cch /// /// /// /// /// /// /// // Chui k t c bit /// /// string specialChar = @"'-%*"; /// /// // gn cc k t c bit thnh k t rng. /// /// s = s.Replace(specialChar[i], ' '); /// /// /// private static string ReplaceSpecialChar(string s)

Bn ngh sao nu ti liu MSDN khng c cc v d. chnh m v d chos quan trngca th .

8. : Cho php bn xc nh ai c php truy cp kiu ca bn. Th cng c thcha thuc tnh cref v hu nh lun hng sang System.Security.PermissionSer.

/// /// To chui tm kim t mt danh sch cc t kha cn tm /// /// /// /// /// /// /// Private Access /// /// private static string BuildSQLQuery(string fieldName, ArrayList keywords)

9. : C th c s dng tham chiu cc lp khc hoc nhng ti liu vn c gy s ch vi ngi c ti liu. Th ny cng c cha thuc tnh cref v bn c th tham chiu cc kiu, phng thc, thuc tnh hoc trng khc m ngi dng c th quan tm n.

/// /// To chui tm kim t mt danh sch cc t kha cn tm /// /// /// /// /// private static string BuildSQLQuery(string fieldName, ArrayList keywords)

10. : Th ny khc vi cc th chnh khc bi v n c s dng bao hm cc ch thch XML bn ngoi tri vi vic ghi chp ti liu cho bt c th g. Th c th hu dng nu cc ch thch XML trong cc file ngun ngy cng tr nn ln v vng v. s dng th ny, bn s cn phi s dng tn file cng nh biu thc XPath vn s c s dng i n cc ch thch ca bn.

/// public virtual void Start()

II. Cc th th cp:C th c s dng bn trong cc th chnh. Nhng th ny c s dng nh du v nh dng Text a vo cc th chnh. Trongv d v th ta cng bit c th ri.

1. Nhp v :Cc th v u c s dng nh ngha khi no mt phn Text l m. S khc bit duy nht gia 2 th ny l c th c s dng nh du mt iu g l m ni dng (jnline) trong mt cu khc, trong khi c s dng xc lp ton b mt khi Text di dng m. C ngha l c cha cc ngt dng cn th khng.

/// /// Thay th cc k t c bit bng du cch bng hm ReplaceSpecialChar("a")/// /// /// private static string ReplaceSpecialChar(string s)

Nu bn mun cung cp mt v d hon chnh, th dng th s thch hp hn.

/// /// Thay th cc k t c bit bng du cch /// /// /// /// /// /// /// // Chui k t c bit /// /// string specialChar = @"'-%*"; /// /// // gn cc k t c bit thnh k t rng. /// /// s = s.Replace(specialChar[i], ' '); /// /// /// private static string ReplaceSpecialChar(string s)

C 2 loi th trnnn c s dng bt c khi no bn a m vo cc website ca mnh

2. : c s dng ch nh mt on trong cc ch thch. Nu cc ch thch di, bn nn ngt n thnh cc on lm cho vic c tr nn d dng hn.

/// /// Trong hm Page_Load ny, ta phi lm cc cng vic sau: /// /// Kim tra bi vit c tn ti hay khng /// v ch c nhng ngi to ra bi vit mi c php sa bi /// v xem bi vit c xut bn cha? /// Nu cha sn xut th ch c ngi duyt bi mi c xem /// /// /// /// protected void Page_Load(object sender, EventArgs e)

3. : C th c s dng to mt tham chiu dn sang mt tham s. Khi m t mt phng thc, bn s thng tham mt tham s ca phng thc. Bng cch s dng th ny, cng c to ti liu c th xc nh tham s no m bn tham chiu sang v to mt link gia 2 tham s trong mt ti liu

/// /// hmtchccArrayList thnh cc chui /// /// /// /// private static void SplitString(string words, ref ArrayList ar)

4. : Th c th c s dng ging nh th ngoi tr bn s dng trong ng cnh ca mt th khc. Khi bn mun lit k mt s phng thc m mt lp cha vs dngth tham chiu n nhng phng thc .

/// /// hm ny c nhiu phng thc nh GetArticlesByFilter /// and /// public class ArticlesDAO

5.Cc th List: Loi th cui cng l cc th List. Nhng th ny c to s dng cc List (danh sch). Th c s dng to mt List v c mt thuc tnh gi l TYPE. Thuc tnh ny nh ngha loi List no m bn ang to; gi tr ny c th c thit lpsang Bullet, number hoc table. Th sau c th c s dng nh ngha header (Tiu ) cho List. N c th cha cc th v . Sau th , th c th cha bt k s th . Mi th tng trng cho mt mc trong danh sch v c th bao gm cc th v th . Mi mc s lun cha mt th , nhng s cn phi cha th nu bn to mt danh sch nh ngha.

Sau y l mt v d v danh sch khng nh ngha:

/// /// /// hmtng tcviCSDL ca i tng Article. /// /// Phng Thc /// GetArticlesByFilter /// UpdatePublish /// GetArticlesDynamic /// /// /// public class ArticlesDAO

Cn y l v d v danh sch nh ngha:

/// /// Thay th cc k t c bit bng du cch /// /// chui cha cc k t c bit /// /// ///Sk t c bit /// /// ///1k t "-" /// /// /// 2k t "%" /// /// /// 3k t "*" /// /// ///4k t "dy nhy ' " /// /// /// /// private static string ReplaceSpecialChar(string s)

Chc by gi cc bn cng phn no bit c tm quan trng ca ch thch. N gp phn to nn hnh nh ca mt ng dng c cht lng cao. Hy to nhng ch thch chnh xc trong vic ghi chp mt ti liu ng dng.