我是C#的新手,我只是想知道是否有办法访问getter和setter。
这是一个示例代码:
public class Foo
{
private AnotherClass _here;
private bool Bar
{
get{return _here.GetAnswer();}
set(return _here.SetAnswer(value);)
}
}
我知道c#中有反射功能,但据我所知,它只执行私有变量。
另外,我一直在尝试这段代码:
public void func()
{
MethodInfo privMethod = Foo.GetType().
GetMethod("Bar", BindingFlags.NonPublic | BindingFlags.Instance);
object fff = privMethod.Invoke();
}
但它不起作用。
任何人都可以帮助我吗?
答案 0 :(得分:1)
PropertyInfo property = typeof(Foo).GetProperty("Bar", BindingFlags.Instance | BindingFlags.NonPublic);
MethodInfo getMethod = property.GetGetMethod(true);
MethodInfo setMethod = property.GetSetMethod(true);