自动生成项目时如何在源中排除 FxCop?

Posted

技术标签:

【中文标题】自动生成项目时如何在源中排除 FxCop?【英文标题】:How to exclude an FxCop in source when item is auto-generated? 【发布时间】:2009-11-14 00:21:14 【问题描述】:

例如:

Public Event CurrentChanged As EventHandler(Of CurrentChangedEventArgs(Of T))

显示消息“不要在成员签名中嵌套泛型类型”。在 CurrentChangedEvent 上,它是保存事件委托的变量,VB 自动生成它。

如何取消该项目的规则?

【问题讨论】:

【参考方案1】:

您可以将异常作为模块级 SuppressMessage 属性输入。

<Module: SuppressMessage("Microsoft.Naming", _
                         "CA1717:OnlyFlagsEnumsShouldHavePluralNames", _
                         Scope := "type", _
                         Target := "CardGame.Suits")>

如果您使用的是 FxCop GUI,您可以让它从问题的右键菜单中将 SuppressMessageAttribute 声明复制到剪贴板:复制为 |模块级 SuppressMessage。但是请注意,这可能会让您获得 C# 语法,这需要一些简单的内务处理才能转换为 VB.Net 语法。

【讨论】:

嘿,我不知道我可以复制取消抑制消息声明!谢谢!我想没有办法得到 vb 代码。

以上是关于自动生成项目时如何在源中排除 FxCop?的主要内容,如果未能解决你的问题,请参考以下文章

从 FxCop 代码分析中排除完整的命名空间?

从 FxCop 中排除规则

如何防止 FxCop 分析自动生成的代码?

BigQuery 字符串到时间戳,在源中保留时区

在源中播放带有井号的音频不起作用

为啥只保存在源中而不是卡片中的条带卡?