我正在使用 ndepend 来查找我的代码问题。现在我发现误报错误太多了。
例如,我有一个根本不复杂的类,但它确实有很多属性。所以,我会从 NDepend 收到警告,说这个类有太多的方法。
这是开箱即用的 NDepend 规则,希望类具有大量方法:
WARN IF Count > 0 IN SELECT TYPES WHERE
NbMethods > 20
ORDER BY NbMethods DESC
我可以更改 NDepend 计算方法数量的方式,以便可以排除我想要的属性吗?
我正在使用 ndepend 来查找我的代码问题。现在我发现误报错误太多了。
例如,我有一个根本不复杂的类,但它确实有很多属性。所以,我会从 NDepend 收到警告,说这个类有太多的方法。
这是开箱即用的 NDepend 规则,希望类具有大量方法:
WARN IF Count > 0 IN SELECT TYPES WHERE
NbMethods > 20
ORDER BY NbMethods DESC
我可以更改 NDepend 计算方法数量的方式,以便可以排除我想要的属性吗?
我可以更改 NDepend 计算方法数量的方式,以便可以排除我想要的属性吗?
谢尔盖,是的,这得益于以下CQLinq 规则:
warnif count > 0
from t in Application.Types
let methods = t.Methods
.Where(m => !m.IsPropertyGetter && !m.IsPropertySetter &&
!m.IsConstructor)
where methods.Count() > 20
orderby methods.Count() descending
select new { t, methods }
在这里,您不仅会获得方法的数量,而且对于每种类型,您都会获得所有方法:
