c# – 使用反射获取字段初始值设定项中使用的ctor参数

我的程序集有多个类,其中包含以下字段:

private static Foo MyFoo = new Foo(typeof(Bar));

参数typeof(Bar)对于每个类都不同.

在我的单元测试中,我需要动态提取该参数.

我可以找到所有类,并过滤那些具有静态Foo字段的类.然后我有一个FieldInfo.

但后来我不知道如何得到那个论点的类型?

最佳答案 查找MethodBodyReader您可以使用它来查看IL并获取那里的构造函数参数的类型.

https://github.com/jbevain/mono.reflection/blob/master/Mono.Reflection/MethodBodyReader.cs

点赞