public static object ToListOf <T>(this IEnumerable <T> enumerable, Type type) { var list = Activator.CreateInstance(typeof(List <>).MakeGenericType(type)); var add = list.GetType().GetMethod("Add"); enumerable.ForEach(x => add.Invoke(list, new object[] { Reflector.Cast(x, type) })); return(list); }