在c#如何用反射来解析自定义的attribute?

 我来答
roarphilar
2012-02-16 · TA获得超过140个赞
知道小有建树答主
回答量:81
采纳率:0%
帮助的人:36.5万
展开全部
你说的attribute 是属性还是特性
1.如果是特性:
用GetCustomAttributes()这个函数
比如建一个工程 加一个testAttr 的特性类和一个test类
public class testAttr : Attribute
{ public int i { get; set; }}
[testAttr(i = 123)]
public class test
{ }
我想得到i=123 的值,就随便一个单击事件里加代码 :
object [] obj= typeof(test).GetCustomAttributes(true);
MessageBox.Show((obj[0] as testAttr).i.ToString());
2.如果是自定义的属性:
类:
public class test
{
public int i { get; set; }

}
单击事件:
test t = new test();
t.i = 123;
MemberInfo mi = t.GetType().GetMember("i")[0];
MessageBox.Show( t.GetType().GetProperty("i").GetValue(t, null).ToString());
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式