SHOWcode

2018年10月1日 星期一

字串 調用方法(第一階段)


  public static object callFunc(string funcName)
    {
        //反射獲取 命名空間+類名稱
//using System.Reflection;
        String TXSR = funcName;
        string className = "activefuction";
        string methodName = funcName;            //傳遞参数           
                                                 // Object[] paras = new Object[] { "string" };
        var t = Type.GetType(className);
        object obj = Activator.CreateInstance(t);
        try
        {
            #region 方法一                //直接调用               
            MethodInfo method = t.GetMethod(methodName);
            //method.Invoke(obj, paras);

            return method.Invoke(obj, null);

            // return method.Invoke(obj, null);
            #endregion

            #region 方法二               
            //MethodInfo[] info = t.GetMethods();
            //for (int i = 0; i < info.Length; i++)
            //{
            //    var md = info[i];                    //方法名                   
            //    string mothodName = md.Name;                    //参数集合                 
            //    ParameterInfo[] paramInfos = md.GetParameters();                    //方法名相同且參數個數一樣                 
            //    if (mothodName == methodName && paramInfos.Length == paras.Length)
            //    {
            //        md.Invoke(obj, paras);
            //    }
            //}
            #endregion

        }
        catch (Exception ex)
        {
            throw ex;
        }


    }


    #endregion

沒有留言:

張貼留言

Jenkins-mail

參考:http://www.linuxea.com/1767.html 前置作業略過~有空再補 Mailer Plugin post { success { emailext ( subject: &...