private object CreateListInstance<T>(T[] values) { var elementType = typeof(T); var listType = typeof(List<>).MakeGenericType(elementType); var list = (IList) Activator.CreateInstance(listType); for (var i = 0; i < values.Length; i++) list.Add(values[i]); return list; }