在MSDN Attributes Tutorial中,他们使用Author
作为属性的示例:
[Author("Jane Programmer", Version = 2), IsTested()]
class Order
{
// add stuff here ...
}
这在我看来是个好主意,因为它允许你使用反射按作者分组(例如) - 有效地将通常在文档中的元数据暴露给编译器,这可能很有用。我立即想到“啊哈!我应该使用所有内联块文档的属性” - 例如:
[Author("Me")]
[Description("Add 1 to value")]
[Param("value", "The original value to add 1 to")]
public int AddOne(value) {return value + 1;}
然而,我无法找到关于文档和属性的of the answers似乎建议使用此方法。它们都使用XML进行内联文档。
是否有内置属性来协助内联文档?如果没有,是否有任何图书馆/软件包,其中包含内联文档的预定义属性集?
答案 0 :(得分:5)
在文档中保留文档的一些缺点:
我现在想不出任何优势。如果我真的需要它,它总是可以解析XML文档注释并将整个代码库转换为任何属性形式。
答案 1 :(得分:3)
这里的问题似乎是'什么是文档?'。如果您感兴趣的'东西'需要通过反射访问,那么您隐含的属性解决方案就是一个解决方案。但如果目的是使用标准文档工具来构建文档,那么就不是这样了。
这里需要解决方案。对'文档'的需求是什么?也许是错误的问题?
答案 2 :(得分:0)
为了完整起见,请在测试项目中提及:
[TestProperty(“Author”, “Ducky”)]
public void SomeTest()
{
...
}
您可以为常规代码扩展该方法。 我宁愿不评论理论问题。 也就是说,也许可以创建使用存储库来提取特定文件/类/方法的所有“作者”/“编辑器”的脚本。