public static PropertyInfo[] GetProperties(Type type) { if (_cache.ContainsKey(type)) { return _cache[type]; } PropertyInfo[] props = type.GetProperties(); _cache.TryAdd(type, props); return _cache[type]; }