问题必须是新的 ObjectList, 因为没有问题将通用类型列表传递到 SetValue, 因为它接受两种类型对象的参数
public void SetValue(
Object obj,
Object value
)
如果您创建一个新的列表, 并用其它收藏集将它包含到新列表中, 它会要求一个可以数数数的 IE, 所以您应该尝试类似的东西 。 @ option: option
field.SetValue(obj, new List<T>(newObjectList as IEnumerable<T>));
至少,在汇编时,不会出任何差错