.Net反射来获得类/属性等的描述?

时间:2010-04-14 16:00:39

标签: .net asp.net vb.net reflection

我知道这不太可能,但我想知道是否有办法获得一个类或属性的评论(即'''之后的位)?我已经设法使用PropertyInfo类获取类的属性列表但我找不到获取注释/描述的方法..我需要它为我为我的网站的管理员写的指南 - 它会很棒如果添加新属性可以自动更新,所以无需担心将来更新它。有人知道怎么做吗?提前谢谢。

此致

理查德

5 个答案:

答案 0 :(得分:3)

您可以使用属性属性来修饰属性,并使用反射来读取属性中的数据:


[Description('This is my property description')]
public String MyStringProp { get; set; }

然后使用

FieldInfo.GetCustomAttributes
阅读说明。

答案 1 :(得分:2)

我认为你在谈论XML评论,对吗?

在这种情况下,有一些第三方工具可以将这些工具转换为各种格式,包括已编译的帮助文件和完整的MSDN风格的网站。

Jon Skeet上周刚刚发布了一篇关于此事的博客:
http://msmvps.com/blogs/jon_skeet/archive/2010/04/10/documentation-with-sandcastle-a-notebook.aspx

答案 2 :(得分:1)

一旦编译了一个类,文档注释就会消失。如果使用/doc switch进行编译,您将获得一个XML文件,尽管您可以使用它。

答案 3 :(得分:0)

不,你不能用反射做到这一点。

您可以做的是配置Visual Studio(或您使用的任何构建过程)在构建时创建包含注释的XML文件,然后您可以分发这些注释。

答案 4 :(得分:0)

您无法通过反思访问正常评论 但是,如果您使用xml-comments(我认为这是在VB'''),可以创建一个文档文件(在项目属性下的C#项目中 - > build - >输出路径/ xml文档文件)你可以访问。但你不需要反思。

Herehere是对VBasic中xml注释的一些描述。