0

クラスから必要なプロパティを取得する方法の問題を解決しようとしています。のような機能が使えますがGetPropertiesForSerialization、使いたいAttributesです。私の考えは、いくつかのクラスプロパティには属性があるということです

class C{
  [MyAttribute(1,picture)]
  private string picture = "my.jpg";
  [MyAttribute(2,Name)]
  public string Name= "myName";
}

そして今、私は他のクラスから属性を取得したいと思います

private void PrintAttributes(){
  //Get list or other container with attibutes
  var c = new C();
  foreach( var item in C.GetMyAttributes()){
    Console.WriteLine(item);
  }
}

関数などの属性を取得する方法は知っていますが、プロパティ名と保護 (パブリック/プライベート) を知らずにこのすべての属性を取得する方法がわかりません。

4

1 に答える 1

1

Reflection を使用してすべてのプロパティを取得し、myObject.GetType().GetProperties()それぞれの属性を確認できます。

于 2013-06-18T21:25:52.197 に答える