c# - C# - 如何遍历类中的所有字段并在这些字段上调用方法?
问题描述
所以我最近发现了 c# 中的反射,但我遇到了一个问题。所以我有一个将类作为字段保存的类(所有这些字段都有一个方法reset()
),我尝试获取所有字段名称,然后获取它们的类型并调用它们的reset()
方法,如下所示:
List<string> fieldnames = new List<string>();
Type t = typeof(AnimationHolder);
foreach(MemberInfo m in t.GetFields())
{
fieldnames.Add(m.Name);
}
for (int i = 0; i < fieldnames.Count; i++)
{
Type atype = Type.GetType(fieldnames[i]);
MethodInfo reset = atype.GetMethod("Reset");
reset.Invoke(type.GetField(fieldnames[i]), null);
}
这只是抛出一个NullReferenceException
,我并没有期待太多,但我真的很渴望答案。请帮忙。
解决方案
推荐阅读
- prolog - 在 prolog 中解决链式反应
- c# - 找出有多少用户可以同时在线?
- javascript - 具有流畅语法和光滑 js 的水平时间线
- html - 为什么当我使用 flex-direction 时我的 div 会消失?
- python - 无法让攻击动画适用于使用 python 的街机库
- python - 在向量上使用 cnn 而不是矩阵
- python-3.x - 从客户端关闭 RPyC 服务器
- java - 错误:找不到 com.android.tools.build:gradle:3.2.1
- flutter - 无法在 ListView 颤动中显示保存的项目
- excel - 如何在VBA中将列Year转换为YYYY