Rab*_*820 5 c# enums constants visual-studio editorconfig
我的根目录中有一个 .editorconfig 文件,适用于我的所有 Visual Studio 项目。它包含以下规则:
# Const field naming rules
dotnet_naming_symbols.const_fields.applicable_accessibilities = *
dotnet_naming_symbols.const_fields.required_modifiers = const
dotnet_naming_rule.const_fields.symbols = const_fields
dotnet_naming_rule.const_fields.style = all_upper
dotnet_naming_rule.const_fields.severity = warning
# Enum naming rules
dotnet_naming_symbols.enums.applicable_kinds = enum
dotnet_naming_rule.enums.symbols = enums
dotnet_naming_rule.enums.style = pascal_case
dotnet_naming_rule.enums.severity = warning
# Naming Styles
dotnet_naming_style.pascal_case.capitalization = pascal_case
dotnet_naming_style.all_upper.capitalization = all_upper
Run Code Online (Sandbox Code Playgroud)
EditorConfig 文件从上到下读取,最接近的 EditorConfig 文件最后读取。匹配的 EditorConfig 部分中的属性按照读取的顺序应用,因此较近文件中的属性优先。
根据这个推理,我的enums规则应该“优先于”我的const_fields规则。但是,以下枚举声明继续向我发出警告:
public enum AggregationMode {
Simultaneous,
Sequential,
}
Run Code Online (Sandbox Code Playgroud)
曰:Warning IDE1006 Naming rule violation: These words cannot contain lower case characters。
编译器是否将枚举值视为 const?我尝试在 VS 中关闭/重新打开我的代码文件,重新排序 .editorconfig 的 const/enum 部分,构建/重建我的解决方案,甚至重新启动 VS,但警告不会消失。任何建议将不胜感激!