c#語(yǔ)言開(kāi)發(fā)時(shí)的一些定制屬性介紹
作者:佚名 時(shí)間:2014-05-08 分享到:
在net framework的程序集中,我們還可以創(chuàng)建自己的屬性.
目前我們僅處理定制屬性較膚淺的知識(shí),主要介紹下述屬性:
1.testcaseattribute-把測(cè)試類的代碼與類本身鏈接起來(lái);
2.bugfixattribute-記錄誰(shuí)修改了源代碼中的什么崆,以及修改的時(shí)間;
3.databasetableattribute和databasecolumnattribute-說(shuō)明如何根據(jù).net類創(chuàng)建數(shù)據(jù)庫(kù)模式
定制屬性只是一個(gè)特殊的類,它必須遵循下述兩個(gè)規(guī)范:
1.屬性必須派生于system.attribute;
2.屬性的構(gòu)造函數(shù)只能包含可在編譯時(shí)解析的類型,例如字符串和整數(shù).
對(duì)于屬性構(gòu)造函數(shù)的參數(shù)來(lái)說(shuō),其類型的限制源于屬性存儲(chǔ)在程序集元數(shù)據(jù)中的優(yōu)雅,在代碼中使用屬性時(shí),就是在內(nèi)聯(lián)中使用屬性的構(gòu)造.例如:
[assembly:assemblykeyfile("company.public")]
這個(gè)屬性存儲(chǔ)在程序集的元數(shù)據(jù)中,作為調(diào)用assemblykeyfileattribute的構(gòu)造的一個(gè)指令,這個(gè)帶一個(gè)字符串參數(shù),在以前的例子中,字符串是compay.public,如果定義了一個(gè)定制屬性,這個(gè)屬性的使用者就會(huì)把參數(shù)寫(xiě)入到類的構(gòu)造函數(shù)中.