我有这个非常简单的测试,因为完整版也不起作用;
public class dfd
{
public string g { get; set; }
}
然后;
Type myType = typeof(dfd);
FieldInfo[] b = myType.GetFields(BindingFlags.Public);
当我查看 b 时,没有字段信息。
{System.Reflection.FieldInfo[0]}
有什么想法吗?
最佳答案
您有一个自动公共(public)属性,它定义了一个私有(private) 字段。如果您请求非公共(public)字段,您将获得该属性的支持字段。
顺便说一句,您需要同时请求 BindingFlags.NonPublic | BindingFlags.Instance
,否则您将无法检索该字段。
关于C# 反射代码不工作;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16848950/