fork download
  1. using static System.Console;
  2. using System;
  3. using System.Reflection;
  4.  
  5. public class Program {
  6. public static void Main(string[] args) {
  7. var x = new Derived();
  8. x.Method();
  9. }
  10. }
  11.  
  12. [AttributeUsage(AttributeTargets.All)]
  13. public class MyAttribute : Attribute {
  14. public MyAttribute() => WriteLine("Executei o atributo...");
  15. }
  16.  
  17.  
  18. class Base {
  19. public Base() {
  20. foreach (var method in this.GetType().GetMethods(BindingFlags.Public | BindingFlags.Instance)) method.GetCustomAttributes(true);
  21. }
  22. }
  23.  
  24. class Derived : Base {
  25. public Derived() => WriteLine("Executei o construtor da classe...");
  26. [My]
  27. public void Method() => WriteLine("Executei o método...");
  28. }
  29.  
  30. //https://pt.stackoverflow.com/q/127867/101
Success #stdin #stdout 0.02s 16084KB
stdin
Standard input is empty
stdout
Executei o atributo...
Executei o construtor da classe...
Executei o método...