1
如何将int,string和float传递给使用反射调用的方法?基本上,不同类型的调用是这样的: method.Invoke(service,null); 我可以传递一个对象数组,但它将如何知道我传递的是什么类型? 谢谢C#反射 - 具有不同类型参数的调用方法
如何将int,string和float传递给使用反射调用的方法?基本上,不同类型的调用是这样的: method.Invoke(service,null); 我可以传递一个对象数组,但它将如何知道我传递的是什么类型? 谢谢C#反射 - 具有不同类型参数的调用方法
您的方法信息恰好与一种方法相关联。两种不同的方法在签名(参数类型)不同时可以具有相同的名称。
所以,如果你有一个重载的方法,您可以通过使用
public MethodInfo GetMethod(
string name,
Type[] types
)
在阵列中提供的参数的类型得到其中一方。
假设我想调用一个像这样的方法:getdetails(int id,string name,float avgsal)using reflections。那么我应该如何将它存储在object []参数数组中? – Milee 2012-03-19 11:16:28
你可以通过var method = type.GetMethod(“getdetails”,new Type [] {typeof(int),typeof(string),typeof(float)})来获得你的MethodInfo;'并通过'var result = method 。调用(myObject,新对象[] {myId,myName,myAvgsal});' – 2012-03-19 11:35:33