我正在尝试通过querysting传递,要调用的方法名称并让ProcessRequest
在我的处理程序中调用该方法。我在这里学习,所以最好的方法是做什么。这就是我的......
我在methodInfo.Invoke上得到错误The best overloaded method match for Invoke(object, object[]) has some invalid arguments
。
public class SocialSharingHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string method = (string)context.Request.QueryString["m"];
if (!string.IsNullOrEmpty(method))
{
MethodInfo methodInfo = typeof(SocialSharingHandler).GetMethod(method);
methodInfo.Invoke(new SocialSharingHandler(), context.Request.Form);
}
}
....
答案 0 :(得分:1)
methodInfo.Invoke(new SocialSharingHandler(), new object[] { context.Request.Form });
答案 1 :(得分:0)
错误消息指出param类型预期对象和对象对象数组[]
public class SocialSharingHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string method = (string)context.Request.QueryString["m"];
if (!string.IsNullOrEmpty(method))
{
MethodInfo methodInfo = typeof(SocialSharingHandler).GetMethod(method);
methodInfo.Invoke(new SocialSharingHandler(), new object[] { context.Request.Form });
}
}
}