使用 Visual Studio 查找缺失的 XML 注释内容

发布于 2024-07-08 13:40:05 字数 464 浏览 11 评论 0原文

在整个 C# 源代码中,我们有很多注释缺少实际内容,例如这样:

/// <summary>
/// </summary>

或这样:

/// <summary>
///
/// </summary>

或这样:

/// <param Name="flag"></param>

不幸的是,Visual Studio 不会针对此类缺失注释生成警告。 但对于我们来说,如果我们可以在 Visual Studio 内的列表(例如 Warings 列表)中单击一个项目,然后转到源代码中的错误位置来纠正它,那就太好了。 另外,如果能在每次构建 xml 文件时看到缺少的 xml 注释内容列表,那就太好了。 您对如何实现这一目标有什么想法吗?

Throughout or C# sourcecode we have a lot of comments that miss the actual content such like this:

/// <summary>
/// </summary>

or this:

/// <summary>
///
/// </summary>

or this:

/// <param Name="flag"></param>

Unfortunately Visual Studio does not generate warnings for this type of missing comments. But for us it would be nice if we could just klick on an item in a list (eg. the warings list) inside visual studio and then be taken to the faulty location in source code to correct it. Also it would be nice to see the list of missing xml comment content upon each build of the xml files. Do you have any idea on how to achieve this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

薆情海 2024-07-15 13:40:05

尝试 XML 评论检查器

XML Comment Checker 是一个应用程序
这将检查 XML 文档
.Net 程序集的遗漏。 它
提供更全面的检查
比 C# 编译器本身,并且是
当您想要检查您的
在将它们编译成之前注释
真实的文档,例如使用
微软沙堡。

从功能列表来看:

检查是否有空部分。(可选)
XML 注释检查器将警告(如果有)
所需部分或元素
存在,但空虚。 这不是
默认启用

Visual Studio 的用法:

XML注释检查器可以设置为
Visual Studio 中的构建后事件
自动检查装配体。
XML 注释发出的警告
检查器已格式化,以便
Visual Studio 将识别它们
并且
将它们显示在错误列表中。 一个
构建后命令行示例:
“PathToCommentChecker\CommentChecker.exe”
“$(TargetPath)”-nologo
-警告空部分

Try XML Comment Checker:

XML Comment Checker is an application
that will check the XML documentation
for a .Net assembly for omissions. It
offers a more comprehensive checking
than the C# compiler itself, and is
ideal for when you wish to check your
comments before compiling them into
real documentation, e.g using
Microsoft Sandcastle.

From the feature list:

Check for empty sections. Optionally,
XML Comment Checker will warn if any
of the required sections or elements
are present, but empty. This is not
enabled by default

Usage from Visual Studio:

XML Comment Checker can be set as the
post-build event in Visual Studio to
check an assembly automatically. The
warnings emitted by XML Comment
Checker have been formatted so that
Visual Studio will recognize them
and
display them in the Error List. An
example post-build command line:
"PathToCommentChecker\CommentChecker.exe"
"$(TargetPath)" -nologo
-warnemptysections

再浓的妆也掩不了殇 2024-07-15 13:40:05

ReSharper 是针对 Visual Studio 的这一(以及许多其他)缺点的解决方案。 我对那些不使用它的人只有怜悯。 ;)

ReSharper is the answer to this (as many other) shortcoming of Visual Studio. I have nothing but pity for anyone who does not use it. ;)

我很OK 2024-07-15 13:40:05

FxCop 和自定义规则?

FxCop and a custom rule?

梦晓ヶ微光ヅ倾城 2024-07-15 13:40:05

您可以使用 XSLT 文件并针对 XSLT 文件调试 xml,然后如果 xml 格式不正确,它将抛出错误,并向您显示 xml 格式不正确的确切行号。
这个简单的 XSLT 文件的工作原理是:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="@* | node()">
        <xsl:copy>
            <xsl:apply-templates select="@* | node()"/>
        </xsl:copy>
    </xsl:template>
</xsl:stylesheet>

You can use an XSLT file and debug the xml against the XSLT file and then it will throw error if the xml is not well formed showing you the exact line number against which the xml is not well formed.
This simple XSLT file works-

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="@* | node()">
        <xsl:copy>
            <xsl:apply-templates select="@* | node()"/>
        </xsl:copy>
    </xsl:template>
</xsl:stylesheet>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文