我正在尝试通过 a 处理泛型方法的调用RealProxy
,但我似乎无法找到有关在截获的方法调用中使用的泛型参数的实际类型的信息。代码摘录:
public override IMessage Invoke(IMessage msg)
{
...
string methodName = (string)msg.Properties["__MethodName"];
Type[] parameterTypes = (Type[])msg.Properties["__MethodSignature"];
object[] args = (object[])msg.Properties["__Args"];
MethodInfo method = typeToProxy.GetMethod(methodName, parameterTypes);
...
假设我正在代理一个接口,例如
interface IFactory
{
TService Create<TService>()
}
当我打电话给代理
proxied.Create<MyClass>()
我希望能够找出泛型参数的类型MyClass
。这可以通过RealProxy
吗?