1. ホーム
  2. c#

[解決済み】Reflectionでプライベートフィールドを検索する?

2022-04-06 10:32:08

質問

このクラスが与えられたとき

class Foo
{
    // Want to find _bar with reflection
    [SomeAttribute]
    private string _bar;

    public string BigBar
    {
        get { return this._bar; }
    }
}

私は属性でマークされるプライベートアイテム_barを見つけたいのです。 それは可能ですか?

私は、属性を探すプロパティでこれを行ったことがありますが、プライベートメンバーフィールドを探したことはありません。

プライベートフィールドを取得するために設定する必要のあるバインディングフラグは何ですか?

どのように解決するのですか?

使用方法 BindingFlags.NonPublicBindingFlags.Instance フラグ

FieldInfo[] fields = myType.GetFields(
                         BindingFlags.NonPublic | 
                         BindingFlags.Instance);