参考:https://blog.csdn.net/chrisdayan/article/details/84959859
标题:C# 通过方法名调用方法
请阅读原文!本文是照抄的原文。
已有方法
namespace CAD2008.Functions { class CreateSgtExcel { public void PCSM(string fileTemplatePath, string projectName, string projectNum) { //... } } }
调用方法:
using System; using System.Reflection; //反射获取 命名空间+类名 string className = "CAD2008.Functions.CreateSgtExcel"; string methodName = "PCSM"; //传递参数 Object[] paras = new Object[] { templatePath, projectName, projectNum }; Type t = Type.GetType(className); object obj = Activator.CreateInstance(t); //直接调用 MethodInfo method = t.GetMethod(methodName); method.Invoke(obj, paras);
原理是,使用的反射。