2012-01-28 104 views
2

是否有方法可以檢索有關.NET API的元數據?以編程方式訪問.NET API

例如,假設我想獲得爲System.Windows.Documents.List定義的所有properties的列表。它會是很好得到一些結構化的格式信息,如XML,JSON等每個條目應該是這個樣子:

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

我想,以避免到屏幕刮MSDN庫。 :-)

回答

5

您可以使用Reflection在運行時檢索有關現有類的元數據。 GetProperties方法是您可以從頭開始的。

+0

感謝達林!我已經發布了一個小代碼示例作爲答案之一。 – dharmatech 2012-01-28 09:49:53

1

您可以使用Reflection,並寫一些代碼做格式轉換成XML,JSON等

或者你可以使用像Reflector

1

由於達林和羅伯特的指針指向System.Reflection命名空間的工具。

這裏是一個簡短的程序將打印出的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); 
       }); 
     } 
    } 
}