以编程方式访问.NET API



是否有方法检索有关.NET API的元数据?

例如,假设我想获得为System.Windows.Documents.List定义的所有属性的列表。如果能以一些结构化格式(如XML、JSON等)获得这些信息,那就太好了。每个条目都应该看起来像:

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

我想避免屏幕抓取MSDN库。:-)

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

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

或者您可以使用类似Reflector 的工具

感谢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);
                });
        }
    }
}

相关内容

  • 没有找到相关文章