68得票6回答
你能从一个 MethodInfo 对象中获取 Func<T>(或类似的)吗?

我知道,一般来说,使用反射会影响性能。(其实我自己并不是反射的粉丝;这只是一个纯学术问题。) 假设存在一个类,长这样: public class MyClass { public string GetName() { return "My Name"; } ...

61得票3回答
如何测试MethodInfo.ReturnType是否为System.Void类型?

使用反射获取 MethodInfo 后,我想测试返回的类型是否为 System.Void。测试返回类型是否为 System.Int32 可以正常工作。 myMethodInfo.ReturnType == typeof(System.Int32) 但是 myMethodInfo.ReturnT...

47得票2回答
如何使用 MethodInfo.Invoke 将参数作为引用传递

如何在使用 MethodInfo.Invoke 方法时将参数作为引用传递? 这是我想要调用的方法:private static bool test(string str, out byte[] byt) 我尝试了这个,但失败了:byte[] rawAsm = new byte[]{}; Met...

47得票2回答
如何从MethodInfo创建一个Action委托?

我想从一个MethodInfo对象中获取一个Action委托。这是否可能?

45得票3回答
如何在不预先知道方法签名的情况下从MethodInfo创建委托?

我需要一个方法,接受一个表示任意签名非泛型静态方法的MethodInfo实例,并返回绑定到该方法的委托。稍后可以使用Delegate.DynamicInvoke方法调用该委托。我的第一次尝试看起来像这样:using System; using System.Reflection; class...

37得票7回答
从C#方法引用中获取MethodInfo

当我们想要获取指定类型的Type实例时,可以使用C#的typeof关键字。但是如果我想通过其引用获取方法的 MethodInfo 怎么办? 例如,我有一个简单的控制台应用程序。它包含一个Program.Main方法。我想通过类似于methodinfoof(Program.Main)的方法来获...

34得票3回答
如何根据类方法的MethodInfo获取接口方法的MethodInfo?

我有一个MethodInfo对象,它代表一个接口方法,以及一个Type对象,它代表实现该接口的类。 我想要找到实现了该接口方法的类方法的MethodInfo对象。 简单的method.GetBaseDefinition()无法用于接口方法。 通过名称查找也不起作用,因为在显式实现接口方法时...

32得票3回答
从MethodInfo构建委托?

在谷歌搜索并进入 SO 并阅读了 这个问题 后,我想知道是否有可能在编译时不知道参数数量或类型的情况下从 MethodInfo 构建出正确的 Delegate?更进一步,是否可以在不使用 Reflection.Emit 或类型构造器的情况下优雅地完成此操作? 对我来说有点遗憾的是,Deleg...

32得票2回答
从MethodInfo创建委托

我目前遇到一个问题,想从 MethodInfo 创建委托。我的总体目标是查看类中的方法,并为标有特定属性的方法创建委托。我尝试使用 CreateDelegate,但出现以下错误。   无法绑定到目标方法,因为其签名或安全透明性与委托类型不兼容。 这是我的代码:public class ...

26得票6回答
从 getter/setter 的 MethodInfo 中找到 hosting PropertyInfo。

我使用反射在运行时进行某些类型分析。如果我有一个MethodInfo实例,如何确定这是否是一个“真正的”方法还是属性的getter/setter方法?如果它是一个属性,我如何找到它所属的PropertyInfo?