2

.NET APIに関するメタデータを取得する方法はありますか?

たとえば、に対して定義されているすべてのプロパティSystem.Windows.Documents.Listのリストを取得したいとします。この情報をXML、JSONなどの構造化された形式で取得すると便利です。各エントリは次のようになります。

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

MSDNライブラリをスクリーンスクレイピングする必要がないようにしたいと思います。:-)

4

3 に答える 3

5

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

于 2012-01-28T08:42:13.097 に答える
1

Reflectionを使用してコードを記述し、XML、JSONなどにフォーマットすることができます。

または、 Reflectorなどのツールを使用できます

于 2012-01-28T08:44:34.770 に答える
1

System.Reflection名前空間へのポインタを提供してくれたDarinとRobertに感謝します。

これは、以下のすべてのパブリックプロパティを出力する短いプログラムです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);
                });
        }
    }
}
于 2012-01-28T09:38:19.647 に答える