2014-02-10 95 views
4

是否有任何方法可以更改CodeAnalysis规则的阈值?CA1502的自定义阈值

尤其是,我们希望我们的构建时方法有20余名不幸的是,代码的复杂性失败,规则CA1502有25阈值:

规则举报违反当圈复杂度大于25.

我们可以以某种方式改变它吗?

回答

2

是的,这是可能的。不幸的是,为可配置规则提供自定义规则设置的唯一方法是通过.fxcop项目文件,由于规则集和项目文件的处理顺序,该项目文件无法与VStudio完美地无缝集成。基本上,如果要同时使用规则集文件和项目文件,则需要在禁用了规则的项目文件中包含所有规则库文件的列表。然后,您将能够控制规则是通过规则集启用还是禁用。完成所有设置后,可以使用如下所示的Settings部分调整圈复杂度规则的设置(假设所有阈值都设置为20,则表示没问题):

<Settings> 
    <Rule TypeName="AvoidExcessiveComplexity"> 
     <Entry Name="Warning Threshold">20</Entry> 
     <Entry Name="Information Threshold">20</Entry> 
     <Entry Name="Critical Warning Threshold">20</Entry> 
     <Entry Name="Critical Error Threshold">20</Entry> 
     <Entry Name="Error Threshold">20</Entry> 
     <Entry Name="Recommended Threshold">20</Entry> 
    </Rule> 
</Settings>