fork download
  1. using System;
  2. using System.Linq;
  3.  
  4. public class Test
  5. {
  6. public enum A {Quick,Brown,Fox}
  7. public enum B {Jumps,Over,The,Lazy,Dog}
  8.  
  9. public A EnumA {get;set;}
  10. public B EnumB {get;set;}
  11.  
  12. public static void Main()
  13. {
  14. var testObj = new Test();
  15. var enumProps = testObj.GetType().GetProperties().Where(p => p.PropertyType.IsEnum).ToList();
  16. Console.WriteLine("{0} enum properties", enumProps.Count());
  17. foreach (var prop in enumProps)
  18. {
  19. var propType = prop.PropertyType;
  20.  
  21. var valueCount = Enum.GetValues(propType).Length;
  22.  
  23. Console.WriteLine("{0} has {1} values", prop.Name, valueCount);
  24.  
  25. }
  26. }
  27. }
Success #stdin #stdout 0.06s 24192KB
stdin
Standard input is empty
stdout
2 enum properties
EnumA has 3 values
EnumB has 5 values