您的位置:首页 > 其它

Attribute/特性心得随笔

2013-11-05 00:00 295 查看
<p>/*</p><p>*特性</p><p>*/</p>

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 

/// <summary> 
/// DisAttribute 的摘要说明 
/// </summary> 
public class DisAttribute : Attribute 
{ 
private string _message; 
/// <summary> 
/// 描述 
/// </summary> 
public string Message 
{ 
get { return _message; } 
} 

public DisAttribute(string message) 
{ 
this._message = message; 
} 
}

/*

*类

*/
using System; 
using System.Collections.Generic; 
using System.EnterpriseServices; 
using System.Linq; 
using System.Web; 
using System.Web.DynamicData; 
/// <summary> 
/// User 的摘要说明 
/// </summary> 
[DisAttribute("User"),TableName("user"),Description("user")] 
public class User 
{ 
private int? _id; 
/// <summary> 
/// Id 
/// </summary> 
[DisAttribute("主键")] 
public int? Id 
{ 
get { return _id; } 
set { _id = value; } 
} 
private string _name; 
/// <summary> 
/// 名称 
/// </summary> 
[DisAttribute("名称")] 
public string Name 
{ 
get { return _name; } 
set { _name = value; } 
} 
}

/*

*获取

*/
//获取特性 
User u = new User(); 
Type _t = u.GetType(); 
foreach (Attribute a in _t.GetCustomAttributes(true)) 
{ 
if (a.GetType().ToString() == "DisAttribute") 
{ 
DisAttribute _da = (DisAttribute)a; 
if (_da != null) 
{ 
Response.Write(_da.Message + "<br>"); 
} 
} 
} 
//获取所有属性 
u.Id = 888888; 
u.Name = "陈奕迅"; 
foreach (PropertyInfo item in _t.GetProperties()) 
{ 
//特性 
Attribute atr = item.GetCustomAttribute(typeof(DisAttribute)); 
if (atr.GetType().ToString() == "DisAttribute") 
{ 
DisAttribute _da = (DisAttribute)atr; 
if (_da != null) 
{ 
Response.Write(_da.Message + "<br>"); 
} 
} 
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: