可以给属性加上Attribute然后在反射的时候可以得到这些Attribute的内容.
那么同样的是否可以给方法加上Attribute呢?
如果可以请给出加Attribute和反射方法时得到Attribute的例子,谢谢

解决方案 »

  1.   

    先回答第一个问题sing System;
     
    [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false )]
    public class HelpAttribute : Attribute
    {
        public HelpAttribute(String Description_in)
        {
            this.description = Description_in;
        }
       
        protected String description;
       
        public String Description
        {
            get
            {
                return this.description;
            }
        }
    }[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false )]
    换成 AttributeTargets.All 可以绑定所有方法、属性、类
      

  2.   

    怎么给方法加Attribute呢?没有例子阿
      

  3.   

    [HelpAttribute("")]
    public void fun()
    {}跟属性一样啊, 下班先走~,回来没人贴反射例子,我回来贴
      

  4.   

    首先是你的Attribute允许加在方法上,然后就可以往方法上加了,
      

  5.   

    HelpAttribute 类[AttributeUsage(AttributeTargets.All, AllowMultiple = false, Inherited = false)]
        public class HelpAttribute : Attribute
        {
            public HelpAttribute(String Description_in)
            {
                this.description = Description_in;
            }        protected String description;        public String Description
            {
                get
                {
                    return this.description;
                }
            }
        }
    方法上添加属性class Fun
        {
            public Fun()
            {        }        [HelpAttribute("Hello")]
            public void GetA()
            {        }
        }反射获取属性
     
                Type a = typeof(Fun);            MethodInfo[] methods =  a.GetMethods();            foreach (MethodInfo method in methods)
                {
                    object[] attributes = method.GetCustomAttributes(true);                foreach (object attribute in attributes)
                    {
                        HelpAttribute helpAttribute = (HelpAttribute)attribute;
                        MessageBox.Show(helpAttribute.Description);
                    }
                }
    程序最后输出Hello
      

  6.   

    依继承Attribute类的AttributeTargets枚举而定