using System; using System.Reflection; namespace Atribuudid2{ [AttributeUsage(AttributeTargets.Method)] class HuvitavMeetodAttribute: System.Attribute{ } public class ValitudMeetodid{ [HuvitavMeetodAttribute()] public void nuputa(){ Console.WriteLine("Rakendus nuputab"); } public void tervita(){ Console.WriteLine("Tere"); } } public class AtribuudiProov{ public static void Main(string[] arg){ ValitudMeetodid v=new ValitudMeetodid(); MethodInfo[] m= typeof(ValitudMeetodid).GetMethods(); foreach(MethodInfo mi in m){ MethodAttributes ma=mi.Attributes; foreach(Attribute at in Attribute.GetCustomAttributes(mi)){ if(at.GetType()==typeof(HuvitavMeetodAttribute)){ mi.Invoke(v, null); Console.Write("huvitav "); } } Console.WriteLine(mi.Name); } } } } /* D:\ctrell>Atribuudid2 Rakendus nuputab huvitav nuputa tervita GetType ToString Equals GetHashCode */