我有这个非常简单的测试,因为完整版本也不能工作;
public class dfd
{
public string g { get; set; }
}
然后;
Type myType = typeof(dfd);
FieldInfo[] b = myType.GetFields(BindingFlags.Public);
当我查看b时,没有字段信息
{System.Reflection.FieldInfo[0]}
任何想法?
您有一个自动的公共属性,它定义了一个私有字段。如果您请求非公共字段,您将获得该属性的支持字段。
顺便说一句,您需要同时请求BindingFlags.NonPublic | BindingFlags.Instance
,否则您将无法检索该字段。