附上源**:
1using
system;
2using
system.collections.generic;
3using
system.data;
4using
system.linq;
5using
system.text;
6using
system.threading.tasks;78
namespace
反射_特性920
21}2223
private
dbtype _dbtype;
24///
25///
字段型別
26///
27public
dbtype dbtype
283031}
3233
private
int_valuelength;
34///
35///
字段值長度
36///
37public
intvaluelength
384041}
42///
43///
建構函式
44///
45///
欄位名46
///字段型別
47///
字段值長度
48public fieldattribute(string fields, dbtype types, int
i)4955}
56 }
2:表名特性
1using
system;
2using
system.collections.generic;
3using
system.linq;
4using
system.text;
5using
system.threading.tasks;67
namespace
反射_特性819
}20///21
///定位函式對映表名;
22///
23///
24public tableattribute(string
table)
2528
}29 }
3:特性測試類
1using
system;
2using
system.collections.generic;
3using
system.data;
4using
system.linq;
5using
system.text;
6using
system.threading.tasks;78
namespace
特性_反射921
set 22}
2324
private
string
_psw;
25///
26///
登陸密碼
27///
28 [field("
consumerpwd
", dbtype.string, 12
)]29
public
string
u_psw
3032
set 33}
3435
private
string
_username;
36///
37///
使用者別稱
38///
39 [field("
consumername
", dbtype.string, 50
)]40
public
string
u_username
4143
set 44}
4546
private
string
_city;
47///
48///
所住城市
49///
50 [field("
usercity
", dbtype.string, 50
)]51
public
string
u_city
5254
set 55}
5657
private
int_popedom;
58///
59///
許可權60
///61 [field("
popedom
", dbtype.int32, 0
)]62
public
intu_popedom
6365
set 66}
6768
private
datetime _adddatatime;
69///
70///
註冊時間
71///
72 [field("
adddatatime
", dbtype.date, 0
)]73
public
datetime u_adddatatime
7476
set 77}
7879
private
int_***;
80///
81///
性別82
///83 [field("
***", dbtype.int32, 0
)]84
public
intu_***
8587
set 88}
8990
private
int_birthtime;
91///
92///
出身日期;
93///
94 [field("
birthtime
", dbtype.string, 9
)]95
public
intu_birthtime
9698
set 99}
100}
101 }
4:測試控制台程式
userinf userss = newuserinf();
userss.u_userid = "
aw12311";
userss.u_psw = "
123"
; userss.u_username = "aw"
; userss.u_city = "武漢"
; userss.u_popedom = 1
; userss.u_*** = 1
; userss.u_birthtime = 19900114
; userss.u_adddatatime =datetime.now;
dateistableattribute
t = new dateistableattribute();
response.write(
"" + t.insertdate(userss));
C 利用反射實現實體類List索引器
在專案開發中,我們經常會自定義一些實體類,在某些需要動態賦值的功能中,我們無法知道到下乙個需要賦值的欄位名稱是什麼,只知道會從其他返回需要賦值的欄位名稱和值,這時候就需要實現索引器了,就像c datatable中的行索引器一樣,可以根據欄位名稱實現查詢和賦值,如下所示 datatable dt ne...
C 反射機制的簡單實現
c 並不支援反射機制,只能自己實現。如果需要實現字字串到函式到對映,一定要使用到函式指標。簡單實現反射機制,根據字串來構造相應到類。主要有以下幾點 1 可以使用map儲存字元從到函式指標到對映。2 工廠類提供字串與函式指標到註冊關係。3 工廠模式根據不同到字串構造不同到類物件。示例 class fa...
C 反射機制的簡單實現
c 並不支援反射機制,只能自己實現。如果需要實現字字串到函式到對映,一定要使用到函式指標。簡單實現反射機制,根據字串來構造相應到類。主要有以下幾點 1 可以使用map儲存字元從到函式指標到對映。2 工廠類提供字串與函式指標到註冊關係。3 工廠模式根據不同到字串構造不同到類物件。示例 class fa...