internal class Reflect
{
private int Add(int arg0, int arg1, int arg2)
{
return arg0 + arg1 + arg2;
}
}
class Program
{
internal static int CallAdd()
{
object target = Assembly.GetExecutingAssembly().CreateInstance("NameSpace.Reflect", true);
Type type = target.GetType();
MethodInfo methodInfo = type.GetMethod("Add", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);
if (methodInfo == null)
return 0;
object[] args = new object[] { 10, 20, 30 };
object result = methodInfo.Invoke(target, args);
return Convert.ToInt32(result);
}
}
反射回值
最新推荐文章于 2021-07-06 14:38:07 发布