public static IEnumerable <PropertyAttributeHolder <T> > GetPropertiesWithAttributes <T>(object obj) where T : Attribute { if (obj == null) { throw new ArgumentNullException(nameof(obj)); } return(GetPropertiesWithAttributes <T>(TypesCache.TypeFor(obj))); }