我在我的项目中创建了代理Web服务.我想从参数中调用方法名称作为字符串,我需要从这些方法获得响应,但它只返回一个字符串.所以请任何人帮助我.
在这里,我需要传递MethodName.
例如:
string response = mut.MethodName(RequestData);
[WebMethod]
public string CALLPROXY(string MethodName, string RequestData)
{
WebReference.IMPSMethods mut = new WebReference.IMPSMethods();
mut.Url = "http://xxxxxxxxxxx.asmx?wsdl";
mut.Credentials = System.Net.CredentialCache.DefaultCredentials;
//string response = mut.LOGIN(RequestData);
string response = mut + "." + MethodName + "(" + RequestData + ")";
return response;
}
最佳答案 试试这个
string response = typeof(WebReference.IMPSMethods)
.GetMethod(MethodName)
.Invoke(mut, new object[] { RequestData })
如果您的类IMPSMethods有重载,您将需要使用重载的.GetMethod()调用来缩小它(查找特定的参数类型等).