2

有没有办法检索有关 .NET API 的元数据?

例如,假设我想获取System.Windows.Documents.List. 最好以某种结构化格式(例如 XML、JSON 等)获取此信息。每个条目应类似于:

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

我想避免不得不筛选 MSDN 库。:-)

4

3 回答 3

5

您可以使用反射在运行时检索有关现有类的元数据。GetProperties方法是您可以开始使用的方法。

于 2012-01-28T08:42:13.097 回答
1

感谢 Darin 和 Robert 提供指向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);
                });
        }
    }
}
于 2012-01-28T09:38:19.647 回答
1

您可以使用反射并编写一些代码来将格式设置为 XML、JSON 等。

或者你可以使用反射器之类的工具

于 2012-01-28T08:44:34.770 回答