【问题标题】:How to remove internal interfaces from class help page generated with Sandcastle or SHFB?如何从使用 Sandcastle 或 SHFB 生成的类帮助页面中删除内部接口?
【发布时间】:2012-01-28 10:55:45
【问题描述】:

我有一个实现许多内部接口的类,我希望文档阅读器看不到该类实现了所有这些内部接口,因为这些信息与读者无关。

例如,如果我有以下课程:

public class MyPublicClass : MyBasePublicClass, MyPublicInterface, MyInternalInterface1, MyInternalInterface2, MyInternalInterface3
{

}

public class MyBasePublicClass
{

}

public interface MyPublicInterface
{
    // Interface members...
}

internal interface MyInternalInterface1
{
    // Interface members...
}

internal interface MyInternalInterface2
{
    // Interface members...
}

internal interface MyInternalInterface3
{
    // Interface members...
}

我希望文档阅读器将 MyPublicClass 视为:

public class MyPublicClass : MyBasePublicClass, MyPublicInterface
{

}

这可以通过 Sandcastle 或 SHFB 实现吗?如何实现?

谢谢!

【问题讨论】:

    标签: c# interface internal sandcastle shfb


    【解决方案1】:

    我也在 Sandcastle Codeplex 讨论中问过这个问题 - How to remove internal interfaces from class help page?

    由于我没有得到足够的答案,我最终创建了一个自定义 Sandcastle 帮助文件生成器插件,该插件会在生成反射信息后挂接到 SHFB。

    然后它打开反射信息文件并从实现内部接口的类型中删除有关实现内部接口的信息并保存修改后的反射信息文件。

    【讨论】:

      【解决方案2】:

      我正在运行 Sandcastle 帮助文件生成器 GUI 的 1.9.3.0 版,它在“可见性”部分中有 DocumentInternals 设置。此设置仅删除指向内部接口的链接并将它们从文档中删除,但它们始终显示在类中。

      所以我认为没有简单的解决办法来实现这一点。编辑 Sandcastle 文件也许是一个解决方案。

      【讨论】:

        猜你喜欢
        • 2018-05-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多