Mik*_*ost 6 c# xml documentation code-documentation
我们向外部客户提供了许多程序集,但并非所有公共API都得到官方支持.例如,由于设计选择不是最佳,有时必须从组件公开公开类型才能使我们的其余代码工作,但我们不希望客户使用该类型.传达缺乏支持的一部分并不是以XML注释的形式提供任何智能感知.
有没有办法有选择地抑制XML注释?我正在寻找除了忽略警告1591之外的其他事情,因为这是一个长期维护问题.
示例:我有一个包含公共类A和B的程序集.A是官方支持的,应该有XML文档.B不适合外部使用,不应记录在案.我可以打开XML文档然后禁止警告1591.但是当我稍后添加官方支持的类C时,我希望编译器告诉我,我已经搞砸了并且没有添加XML文档.如果我在项目级别压制了1591,就不会发生这种情况.我想我可以#cragma跨越整个类,但似乎应该有更好的方法来做到这一点.
制作此类方法internal,并将[assembly: InternalsVisibleTo("AssemblyName")]属性添加到显示它们的程序集中.
根本不提供智能感知怎么样?
///<summary>A documentation</summary>
public class A { }
///<summary>B documentation. This class is not supported...</summary>
[EditorBrowsable(EditorBrowsableState.Advanced)]
public class B { }
///<summary>C documentation</summary>
public class C { }
Run Code Online (Sandbox Code Playgroud)
这样,您仍然可以记录不受支持的类(内部用户也很重要!)并且让外部用户在智能感知上看不到它们。在内部,您可以使 Visual Studio 能够“看到”这些高级构造。该页面EditorBrowsableAttribute告诉我们如何:
在 Visual C# 中,您可以使用工具 | 下的隐藏高级成员设置来控制高级属性何时出现在 IntelliSense 和属性窗口中。选项| 文本编辑器 | C#。对应的EditorBrowsableState是Advanced。
| 归档时间: |
|
| 查看次数: |
1161 次 |
| 最近记录: |