【发布时间】:2013-08-25 09:27:08
【问题描述】:
我有一个类型来定义和分配一些静态只读字段。 我违反了方法太大 (LOC)
我想知道我是否有方法的属性,并在规则中使用它(见下文)。在我的源代码中的什么地方我需要使用这个属性来丢弃“这个和哪个”方法?
示例代码:
示例规则:
【问题讨论】:
标签: ndepend lines-of-code
我有一个类型来定义和分配一些静态只读字段。 我违反了方法太大 (LOC)
我想知道我是否有方法的属性,并在规则中使用它(见下文)。在我的源代码中的什么地方我需要使用这个属性来丢弃“这个和哪个”方法?
示例代码:
示例规则:
【问题讨论】:
标签: ndepend lines-of-code
为什么 NDepend 将静态字段计为方法的 LOC
这是因为当你做一个静态字段内联初始化时,它会在类构造函数中添加一行代码。实际上,只要您在一个类中有一个静态字段内联初始化,C# 编译器就会为您的类创建一个静态构造函数。所以如果你有 N 个静态字段内联初始化,你就有一个方法(类构造函数)有 N 行代码。
NDepend 在这里报告的大方法名为BassAttributeNames..cctor()。当然,调整代码规则以避免这种匹配的最简单方法是添加子句:
&& !m.IsClassContructor
【讨论】: