如何检测方法是否已经定义?
请问在C#中是否有和JS中一样先检测方法程序是否存在,如果存在则执行的方法?
JS中代码类似如下:
if(window.myfunction)
eval("myfunction");
[解决办法]
利用反射应该可以满足您的需求...
参考如下代码:
using System.Reflection;public static class Utility{ public static bool Exists(object instance, string funcname) { bool value = false; if (instance == null) { throw new NullReferenceException(); } MethodInfo method = instance.GetType().GetMethod(funcname, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static); if (method != null) { value = true; } return value; }}