2012-01-28 8 views
2

.NET APIに関するメタデータを取得する方法はありますか?.NET APIにプログラムでアクセスする

たとえば、System.Windows.Documents.Listに定義されているpropertiesのすべてのリストを取得したいとします。私は、MSDNライブラリをこすり選別することを避けるために希望

<property name="MarkerStyle" type="TextMarkerStyle" get="true" set="true"/> 

:などのようになるはずです各エントリXML、JSON、などいくつかの構造化された形式でこの情報を取得するにはすてきなことです。 :-)

答えて

5

Reflectionを使用すると、実行時に既存のクラスに関するメタデータを取得できます。 GetPropertiesメソッドは、あなたが何かを始めることができるものです。

+0

おかげでダーリン!私は答えの1つとして小さなコード例を掲示しました。 – dharmatech

1

あなたはXMLに書式設定を行うにはいくつかのコードをReflectionを使用して書くことができ、JSONなど

それともSystem.Reflection名前空間へのポインタのためのダーリンとロバートにReflector

1

おかげのようなツールを使用することができます。ここで

Listのすべてのパブリックプロパティをプリントアウトする短いプログラムです:

using System; 
using System.Reflection; 
using System.Windows.Documents; 

namespace ReflectionWpfListPropertiesTest 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      var members = typeof(List).GetMembers(); 

      Array.ForEach(members, info => 
       { 
        if (info.MemberType == MemberTypes.Property) 
         Console.WriteLine(info); 
       }); 
     } 
    } 
} 
関連する問題