编程语言
首页 > 编程语言> > C# 利用类名字符串调用并执行类方法

C# 利用类名字符串调用并执行类方法

作者:互联网

/// <summary>
/// 调用并执行指定类里面的函数
/// </summary>
/// <param name="className">需要调用的类名(包含其命名空间)</param>
/// <param name="methodName">需要调用的方法名</param>
/// <param name="parameters">传递的参数值</param>
public void GetAndExecuteMethod(string className, string methodName, object[] parameters=null)
{
    try
    {
        var type = Type.GetType(className);
        if (type == null)
            throw new NullReferenceException("类" + className + "不存在");

        var obj = type.Assembly.CreateInstance(className);
        //调用其方法
        var method = type.GetMethod(methodName);
        if(method == null)
            throw new NullReferenceException("方法" + methodName + "不存在");

        //执行方法
        method.Invoke(obj, parameters);
    }
    catch (Exception)
    {
        throw;
    }
}

标签:调用,methodName,C#,className,var,字符串,null,type,类名
来源: https://www.cnblogs.com/godshadow/p/15089942.html