【发布时间】:2009-09-16 21:07:23
【问题描述】:
在 .NET 中,如何使用反射获取方法中使用的类变量?
例如:
class A
{
UltraClass B = new(..);
SupaClass C = new(..);
void M1()
{
B.xyz(); // it can be a method call
int a = C.a; // a variable access
}
}
注意: GetClassVariablesInMethod(M1 MethodInfo) 返回 B 和 C 变量。 我所说的变量是指该特定变量的值和/或类型和构造函数参数。
【问题讨论】:
-
我不明白你在做什么。为什么需要反思?对于“类变量”,您是指字段吗?您可以轻松获取某个字段的当前实例,但不能获取用于创建它的构造函数参数。为什么需要这个?
-
类变量是指类范围字段,即类。我正在考虑为某些方法声明一个属性,这些方法需要根据它从其父类中使用的变量来完成特殊的事情。某个领域的当前实例可以为我工作。
标签: .net reflection methodinfo