Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >CA1509:代码度量配置文件中的条目无效

CA1509:代码度量配置文件中的条目无效

作者头像
呆呆
发布于 2022-02-18 13:50:36
发布于 2022-02-18 13:50:36
71000
代码可运行
举报
文章被收录于专栏:centosDaicentosDai
运行总次数:0
代码可运行

规则 ID

CA1509

类别

可维护性

修复是中断修复还是非中断修复

非中断

原因

代码度量规则(如 CA1501、CA1502、CA1505 和 CA1506)提供了具有无效条目的名为 CodeMetricsConfig.txt 的配置文件。

规则说明

通过代码度量分析规则的 .NET 代码质量分析器实现,最终用户可以提供名为 CodeMetricsConfig.txt 的附加文件。 此文件包含配置用于分析的代码度量阈值的条目。 以下规则可在此文件中配置:

CA1501:避免过度继承

CA1502:避免过度复杂

CA1505:避免使用无法维护的代码

CA1506:避免过度类耦合度

此配置文件需要每个条目采用以下格式:

'RuleId'(Optional 'SymbolKind'): 'Threshold'

“RuleId”的有效值为 CA1501、CA1502、CA1505 和 CA1506。

可选的“SymbolKind”的有效值为 Assembly、Namespace、Type、Method、Field、Event 和 Property。

“阈值”的有效值为非负整数。

以“#”开头的行被视为注释行

例如,以下是有效的配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Comment text
CA1501: 1
CA1502(Type): 4
CA1502(Method): 2

此配置文件中的无效条目使用 CA1509 诊断进行标记。

如何解决冲突

若要解决此规则的冲突,请确保 CodeMetricsConfig.txt 中的无效条目采用所需的格式。

何时禁止显示警告

请勿禁止显示此规则的冲突警告。

相关规则

CA1501:避免过度继承

CA1502:避免过度复杂

CA1505:避免使用无法维护的代码

CA1506:避免过度类耦合度

另请参阅

可维护性规则

测量托管代码的复杂性和可维护性

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
代码质量规则
.NET 代码分析提供旨在提高代码质量的规则。 这些规则分为设计、全球化、性能和安全性等领域。 某些规则特定于 .NET API 用法,而其他规则与通用代码质量相关。
呆呆
2022/01/09
2.4K0
CA1012:抽象类型不应具有公共构造函数
抽象类型的构造函数只能由派生类型调用。 由于公共构造函数可创建类型的实例,但无法创建抽象类型的实例,因此具有公共构造函数的抽象类型在设计上是错误的。
用户4268038
2022/01/10
5510
CA1040:避免使用空接口
接口定义提供某个行为或使用协定的成员。 接口所描述的功能可以被任何类型采用,而不管该类型出现在继承层次结构中的哪个位置。 类型通过实现接口的成员来实现接口。 空接口不定义任何成员。 因此,它不定义可实现的协定。
呆呆
2022/01/10
3950
CA1027:用 FlagsAttribute 标记枚举
枚举的值是两个值的幂或枚举中定义的其他值的组合,且不存在 System.FlagsAttribute 属性。 为了减少误报,此规则不对具有连续值的枚举报告冲突。
用户4268038
2022/01/10
6120
CA1036:重写可比较类型中的方法
类型实现 System.IComparable 接口,并且不重写 System.Object.Equals,也不重载表示相等、不等、小于或大于的语言特定运算符。 如果类型仅继承接口的实现,则规则不会报告冲突。
呆呆
2022/01/10
7020
CA1041:提供 ObsoleteAttribute 消息
类型和成员使用了未指定其 System.ObsoleteAttribute.Message 属性的 System.ObsoleteAttribute 特性进行标记。
呆呆
2022/01/10
3090
CA1508:避免死条件代码
方法具有在运行时计算结果始终为 true 或 false 的条件代码。 这会导致条件的 false 分支中出现死代码。
呆呆
2022/02/18
5640
CA1028:枚举存储应为 Int32
枚举是一种值类型,它定义一组相关的已命名常数。 默认情况下,System.Int32 数据类型用于存储常量值。 虽然你可以更改此基础类型,但对于大多数情况,既不需要,也不建议你这样做。 使用小于 Int32 的数据类型不会显著提高性能。 如果无法使用默认数据类型,则应使用某种符合公共语言规范 (CLS) 的整型类型,例如 Byte、Int16、Int32 或 Int64,以确保枚举的所有值都可以用符合 CLS 的编程语言表示。
用户4268038
2022/01/10
4960
CA1010:集合应实现泛型接口
类型实现 System.Collections.IEnumerable 接口,但不能实现 System.Collections.Generic.IEnumerable<T> 接口和包含程序集的目标 .NET。 此规则会忽略能够实现 System.Collections.IDictionary 的类型。
用户4268038
2022/01/10
6560
CA1008:枚举应具有零值
非中断 - 如果系统提示你向无标志枚举添加 None 值。 中断 - 如果系统提示你重命名或删除任何枚举值。
用户4268038
2022/01/10
5690
代码分析规则的配置文件
代码分析规则具有多种配置选项。 可以在下列任一分析器配置文件中将这些选项指定为键值对:
呆呆
2022/01/09
9230
CA3003:查看文件路径注入漏洞的代码
在处理来自 Web 请求的不受信任的输入时,请谨慎使用用户控制的输入指定文件路径。 攻击者可能能够读取非预期文件,从而导致敏感数据出现信息泄漏。 或者,攻击者可能能够写入非预期文件,从而导致在未经授权的情况下修改敏感数据,或者降低服务器的安全性。 常见的攻击者技术是使用路径遍历访问预期目录之外的文件。
呆呆
2022/02/20
1.2K0
CA1031:不要捕捉一般异常类型
在 catch 语句中捕捉到了 System.Exception 或 System.SystemException 等一般异常,或者已使用一般 catch 子句(如 catch())。
用户4268038
2022/01/10
5100
CA1047:不要在密封类型中声明受保护的成员
公共类型是 sealed(在 Visual basic 中为 NotInheritable),并声明了一个受保护的成员或受保护的嵌套类型。 此规则不报告 Finalize 方法的冲突,这些方法必须遵循此模式。
呆呆
2022/01/10
7070
CA1021:避免使用 out 参数
按引用(使用 out 或 ref)传递类型要求具有使用指针的经验,了解值类型和引用类型的不同之处,以及能处理具有多个返回值的方法。 另外,out 和 ref 参数之间的区别并未得到广泛了解。
用户4268038
2022/01/10
5460
CA1003:使用泛型事件处理程序实例
某个类型包含的委托返回 void,且该委托的签名包含两个参数(第一个参数是对象,第二个参数是可以分配给 EventArgs 的类型),而且包含程序集面向的是 .NET。
用户4268038
2022/01/09
5730
CA1024:在适用处使用属性
在大多数情况下,属性表示数据,方法执行操作。 访问属性的方式类似于访问字段,这使得它们更易于使用。 如果一个方法具备以下条件之一,则该方法可能很适合成为属性:
用户4268038
2022/01/10
4830
CA1725:参数名应与基方法中的声明保持一致
某方法替代中的参数名与该方法的基声明中的参数名或该方法的接口声明中的参数名不一致。
呆呆
2022/02/19
2710
CA1000:不要在泛型类型中声明静态成员
泛型类型包含 static(在 Visual Basic 中为 Shared)成员。
呆呆
2022/01/09
5370
CA1051:不要声明可见实例字段
字段的主要用途应是作为实现的详细信息。 字段应为 private 或 internal,并应通过使用属性公开这些字段。 在访问某个字段时,可轻松访问属性,而属性访问器中的代码可在扩展类型功能时更改,而不会引入重大更改。
呆呆
2022/01/10
4970
相关推荐
代码质量规则
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验