クラスのプロパティのリストを取得するにはどうすればいいですか? 質問する

クラスのプロパティのリストを取得するにはどうすればいいですか? 質問する

クラスのすべてのプロパティのリストを取得するにはどうすればよいですか?

ベストアンサー1

反省;例えば:

obj.GetType().GetProperties();

タイプの場合:

typeof(Foo).GetProperties();

例えば:

class Foo {
    public int A {get;set;}
    public string B {get;set;}
}
...
Foo foo = new Foo {A = 1, B = "abc"};
foreach(var prop in foo.GetType().GetProperties()) {
    Console.WriteLine("{0}={1}", prop.Name, prop.GetValue(foo, null));
}

次のフィードバック...

  • 静的プロパティの値を取得するには、null最初の引数として渡します。GetValue
  • 非パブリック プロパティを確認するには、(たとえば) GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance)(すべてのパブリック/プライベート インスタンス プロパティを返します) を使用します。

おすすめ記事