例如,我有一个字符串列表恰好是静态类的名称,并且根据选择的字符串名称,我只想使用该静态类。我知道在静态类上调用的方法是什么,并且每个类都是相同的。
如果字符串为“x”,“y”,“z”且所选字符串为“z”且方法名为process()
,那么在我的代码中它将调用x.process()
in某种方式,x是实际静态类的名称。
请记住这些是static
类。
答案 0 :(得分:7)
您可以使用反射,但请namespace
包含class
名称。
Type type = Type.GetType("namespace.x");
MethodInfo process = type.GetMethod("process");
process.Invoke(null, null);