如何在运行时更改自定义属性的属性?

时间:2019-05-21 13:25:26

标签: c# attributes

我正在研究属性。我是他们的新手。我有一个查询。 我已经制作了一些自定义属性类。让我显示一些代码。

public class MySpecialAttribute : Attribute
{
        public string Name { get; set; }

        public int Age { get; set; }
}

我在某些方法上使用了此属性。

public class UseOfAttribute
{
        [MySpecial]
        public void Hello()
        {
            Console.WriteLine("Hello");
        }

        [MySpecial]
        public void Bye()
        {
            Console.WriteLine("Bye");
        }

        public void TC()
        {
            Console.WriteLine("TC");
        }
}

现在我的问题是我在运行时获取了所有带有MySpecialAttribute的方法,并且可以在运行时更改Name和age属性。如果可以的话,那怎么办?

class Program
    {
        static void Main(string[] args)
        {
            var allMethods = typeof(UseOfAttribute).GetRuntimeMethods().Where(r => r.IsDefined(typeof(MySpecialAttribute))).ToList();            
        }
    }

这是获取我的方法的方式。 谁能告诉我? 预先感谢。

0 个答案:

没有答案