ndepend - 为什么 NDepend 将静态字段计为方法的 LOC

标签 ndepend lines-of-code

我有一个类型来定义和分配一些静态只读字段。 我收到了“方法太大 (LOC)”的违规

我想知道我是否有方法的属性,并在规则中使用它(见下文)。我的源代码中的哪里需要使用此属性来丢弃“this andwhich”方法?

示例代码:

enter image description here

示例规则:

enter image description here

最佳答案

为什么 NDepend 将静态字段计为方法的 LOC

这是因为当你进行静态字段内联初始化时,它会在类构造函数中添加一行代码。实际上,一旦类中有一个静态字段内联初始化,C# 编译器就会为您的类创建一个静态构造函数。因此,如果您有 N 个静态字段内联初始化,那么您就有一个具有 N 行代码的方法(类构造函数)。

NDepend 在此报告的大型方法名为 BassAttributeNames..cctor()。当然,调整代码规则以避免此类匹配的最简单方法是添加子句:

&& !m.IsClassContructor

关于ndepend - 为什么 NDepend 将静态字段计为方法的 LOC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18384004/

相关文章:

c# - NDepend 能否将所有方法中的代码输出到特定方法的依赖树中?

linux - NDepend 是否在 Mono/Linux 上运行?

SWT需要很多行代码

metrics - 什么是 "Third Generation Scale"?

计算代码行数的 C 程序

c# - 仅保留使用过的类型并删除未使用的类型

c# - 查找未处置的 IDisposables

.net - 解决 MSB3247 - 发现同一依赖程序集的不同版本之间存在冲突

java - 计算代码行数 - 质量指标