1

我有这个非常简单的测试,因为完整版也不起作用;

public class dfd
{
    public string g { get; set; }
}

接着;

        Type myType = typeof(dfd);
        FieldInfo[] b = myType.GetFields(BindingFlags.Public);

当我查看 b 时,没有字段信息。

{System.Reflection.FieldInfo[0]}

有任何想法吗?

4

1 回答 1

7

您有一个自动的公共属性,它定义了一个私有字段。如果您要求非公共字段,您将获得该属性的支持字段。

顺便说一句,您需要同时要求两者BindingFlags.NonPublic | BindingFlags.Instance,否则您将无法检索该字段。

于 2013-05-31T02:41:47.440 回答