前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >代码质量规则配置选项

代码质量规则配置选项

作者头像
呆呆
发布2022-01-09 12:07:14
发布2022-01-09 12:07:14
6250
举报
文章被收录于专栏:centosDaicentosDai

除了配置严重性外,代码质量规则还有其他配置选项。 例如,可以将每个代码质量分析器配置为仅应用于代码库的特定部分。 通过向指定规则严重性和常规编辑器首选项的同一个 EditorConfig 文件添加键值对,可指定这些选项。

选项作用域

每个优化选项都可以针对所有规则、某个规则类别(例如“安全性”或“设计”)或某个特定规则进行配置。

┮Τ砏玥

若要为所有规则配置选项,请使用下面的语法:

语法

示例

dotnet_code_quality.<OptionName> = <OptionValue>

dotnet_code_quality.api_surface = public

<OptionName> 的值列在选项下。

规则类别

若要为某个规则类别配置选项,请使用下面的语法:

语法

示例

dotnet_code_quality.<RuleCategory>.<OptionName> = OptionValue

dotnet_code_quality.Naming.api_surface = public

下表列出了 <RuleCategory> 的可用值。

Design Documentation Globalization Interoperability

Maintainability Naming Performance SingleFile

Reliability Security Usage

特定规则

若要为某个特定规则配置选项,请使用下面的语法:

语法

示例

dotnet_code_quality.<RuleId>.<OptionName> = <OptionValue>

dotnet_code_quality.CA1040.api_surface = public

选项

本节列出了一部分可用选项。 若要查看可用选项的完整列表,请参阅分析器配置。

api_surface

exclude_async_void_methods

exclude_single_letter_type_parameters

output_kind

required_modifiers

exclude_extension_method_this_parameter

null_check_validation_methods

additional_string_formatting_methods

excluded_type_names_with_derived_types

excluded_symbol_names

disallowed_symbol_names

api_surface

描述

允许的值

默认值

可配置的规则

要分析 API 图面的哪个部分

publicinternal 或 friendprivateall用逗号 (,) 分隔多个值

public

CA1000 CA1003 CA1008 CA1010CA1012 CA1024 CA1027 CA1028CA1030 CA1036 CA1040 CA1041CA1043 CA1044 CA1051 CA1052CA1054 CA1055 CA1056 CA1058CA1063 CA1708 CA1710 CA1711CA1714 CA1715 CA1716 CA1717CA1720 CA1721 CA1725 CA1801CA1802 CA1815 CA1819 CA2217CA2225 CA2226 CA2231 CA2234

exclude_async_void_methods

描述

允许的值

默认值

可配置的规则

是否忽略不返回值的异步方法

truefalse

false

CA2007

备注

早期版本中将此选项命名为 skip_async_void_methods。

exclude_single_letter_type_parameters

描述

允许的值

默认值

可配置的规则

是否从规则中排除单字符的类型参数,例如,Collection<S> 中的 S

truefalse

false

CA1715

备注

早期版本中将此选项命名为 allow_single_letter_type_parameters。

output_kind

描述

允许的值

默认值

可配置的规则

指定应分析项目中生成此程序集类型的代码

OutputKind 枚举的一个或多个字段用逗号 (,) 分隔多个值

所有输出种类

CA2007

required_modifiers

描述

允许的值

默认值

可配置的规则

指定应分析的 API 所需的修饰符

以下允许的修饰符表中的一个或多个值用逗号 (,) 分隔多个值

取决于每个规则

CA1802

允许的修饰符

总结

none

无修饰符要求

static 或 Shared

必须声明为 static(在 Visual Basic 中为 Shared)

const

必须声明为 const

readonly

必须声明为 readonly

abstract

必须声明为 abstract

virtual

必须声明为 virtual

override

必须声明为 override

sealed

必须声明为 sealed

extern

必须声明为 extern

async

必须声明为 async

exclude_extension_method_this_parameter

描述

允许的值

默认值

可配置的规则

是否跳过对扩展方法的 this 参数的分析

truefalse

false

CA1062

null_check_validation_methods

描述

允许的值

默认值

可配置的规则

null 检查验证方法的名称,这些方法用于确定传递给方法的参数不是 null

允许的方法名称格式(以 | 分隔): - 仅方法名称(包括具有相应名称的所有方法,不考虑包含的类型或命名空间) - 完全限定的名称,使用符号的文档 ID 格式,前缀为 M:(可选)

CA1062

additional_string_formatting_methods

描述

允许的值

默认值

可配置的规则

其他字符串格式设置方法的名称

允许的方法名称格式(以 | 分隔): - 仅方法名称(包括具有相应名称的所有方法,不考虑包含的类型或命名空间) - 完全限定的名称,使用符号的文档 ID 格式,前缀为 M:(可选)

CA2241

excluded_type_names_with_derived_types

描述

允许的值

默认值

可配置的规则

类型的名称,用于将类型及其所有派生类型从分析范围内排除

允许的符号名称格式(以 | 分隔): - 仅类型名称(包括具有相应名称的所有类型,不考虑包含的类型或命名空间) - 完全限定的名称,使用符号的文档 ID 格式,前缀为 T:(可选)

CA1303

excluded_symbol_names

描述

允许的值

默认值

可配置的规则

从分析范围排除的符号的名称

允许的符号名称格式(以 | 分隔): - 仅符号名称(包括具有相应名称的所有符号,不考虑包含的类型或命名空间) - 完全限定的名称,使用符号的文档 ID 格式 每个符号名称都需要带有一个符号类型前缀,例如表示方法的 M: 前缀、表示类型的 T: 前缀,以及表示命名空间的 N: 前缀。 - .ctor 表示构造函数,.cctor 表示静态构造函数

CA1062 CA1303 CA2000 CA2100 CA2301 CA2302CA2311 CA2312 CA2321 CA2322 CA2327 CA2328CA2329 CA2330 CA3001 CA3002 CA3003 CA3004CA3005 CA3006 CA3007 CA3008 CA3009 CA3010CA3011 CA3012 CA5361 CA5376 CA5377 CA5378CA5380 CA5381 CA5382 CA5383 CA5384 CA5387CA5388 CA5389 CA5390

disallowed_symbol_names

描述

允许的值

默认值

可配置的规则

不允许出现在分析上下文中的符号的名称

允许的符号名称格式(以 | 分隔): - 仅符号名称(包括具有相应名称的所有符号,不考虑包含的类型或命名空间) - 完全限定的名称,使用符号的文档 ID 格式 每个符号名称都需要带有一个符号类型前缀,例如表示方法的 M: 前缀、表示类型的 T: 前缀,以及表示命名空间的 N: 前缀。 - .ctor 表示构造函数,.cctor 表示静态构造函数

CA1031

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

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

本文系外文翻译前往查看

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档