我试图调用通用方法, 并且需要动态地传递它。 但得到一个编译错误, CS0246: 找不到类型或名称空间名称 。 您是否缺少使用指令或组装参考 。 请告诉我我忽略了什么, 谢谢 。
...在主...... 在主...
Type t = DiscoverType(field); // returns Type given FieldInfo via Type.GetType(string)
MethodInfo method = typeof(testClass).GetMethod("MyGenericMethod", BindingFlags.NonPublic | BindingFlags.Instance);
MethodInfo generic = method.MakeGenericMethod(typeof(t));
object[] args = {field};
generic.Invoke(this, args);
通用方法...
private void MyGenericMethod<T>(FieldInfo field)
{
field.SetValue(obj, new List<T>(objList));
}