system.type類
1.屬性
許多布林屬性表示這種型別是乙個類還是乙個列舉等等。這些特性包括isabstract,isclass等等
type vectype = typeof(vector);
console.writeline(vectype.isabstract);//return false
console.writeline(vectype.isclass);//return true
2.方法
獲取對應資料型別的成員資訊,建構函式,屬性,方法和事件
type t = typeof(double);
methodinfo methods = t.getmethods();
foreach (methodinfonextmethodin methods)
console.writeline(nextmethod);
返回方法的俄細節資訊。
assmeble類
把程式集載入到正在執行的程序中。可以使用靜態成員assmeble.load和assemble.loadfrom。前者的引數是程式集名稱,執行庫會在各個位置上搜尋該程式集。後者的引數是完整的路徑
whatsnewattribute的例子自定義attribute 類必須繼承於system.attribute 空間。
namespace wrox.procsharp.whatsnewattributes
[attributeusage(attributetargets.class|attributetargets.method, allowmultiple = true, inherited = false)]
public
class
lastmodifiedattribute:attribute
private
datetimedatemodified;
private
stringchanges;
private
stringissues;
public lastmodifiedattribute(stringdatemodified,string changes)
this.datemodified = datetime.parse(datemodified);
this.changes = changes;
public
datetimedatemodified
get
return datemodified;
public
string changes
get
return changes;
public
string issues
get
return issues;
set
issues = value;
[attributeusage(attributetargets.assembly)]
public
class
supportswhatsnewattribute : attribute
using wrox.procsharp.whatsnewattributes;
using system.collections;
[assembly: supportswhatsnew]
namespace wrox.procsharp.vectorclass
[lastmodified("14feb 2007","ienumerable inte***ceimplemented " +
"so vector can now be treated as a collection")]
[lastmodified("10feb 2007","iformattable inte***ceimplemented " +
"so vector now responds to format specifiers n andve")]
class
vector :iformattable
public
double x, y,z;
public vector(doublex,double y, doublez)
this.x = x;
this.y = y;
this.z = z;
[lastmodified("10feb 2002",
"methodadded in order to provide formatting support")]
public
stringtostring(string format,iformatprovider formatprovider)
if (format != null)
return tostring();
else
return
null;
[lastmodified("14feb 2007",
"class created as part of collection support forvector")]
private
class
vectorenumerator
using wrox.procsharp.whatsnewattributes;
namespace reflection
class
program
static
stringbuilderoutputtext =new
stringbuilder(1000);
static
datetimebackdateto =new
datetime(2007,2, 1);
static
void main(string args)
assembly theassembly = assembly.load("wrox.procsharp.vectorclass");
type types = theassembly.gettypes();
foreach (type tin types)
console.writeline(t.name);
attribute attri = attribute.getcustomattributes(t, false);
foreach (attributeiin attri)
lastmodifiedattributelastmodifiedattrib = ias
lastmodifiedattribute;
console.writeline(lastmodifiedattrib.datemodified.tostring()+" ; " +lastmodifiedattrib.changes);
console.read();
每日程式設計(40)
題目描述 給定乙個字串s,檢查是否能重新排布其中的字母,使得兩相鄰的字元不同。若可行,輸出任意可行的結果。若不可行,返回空字串。示例 1 輸入 s aab 輸出 aba 示例 2 輸入 s aaab 輸出 注意 s 只包含小寫字母並且長度在 1,500 區間內。分析 首先通過乙個字典對字串中的所有進...
《微軟Dynamics CRM 4 0 程式設計》
programming microsoft dynamics crm 4.0 微軟dynamics crm 4.0 程式設計 由sonoma partners 公司組織編寫,這個公司可以說是從事microsoft crm 最早期的合作夥伴 開始於crm 1.0 pre release beta 公司...
WCF 4 0 高階系列 隨筆彙總
wcf4.0 高階系列 前言 wcf4.0 高階系列 第一章 wcf簡介 wcf4.0高階系列 第二章 寄宿wcf服務 wcf4.0高階系列 第三章 構建健壯的程式和服務 wcf4.0高階系列 第四章 保護企業內部的wcf服務 wcf4.0高階系列 第五章 在網際網路環境下保護wcf服務 wcf4....