|
| 1 | +# To learn more about .editorconfig see https://aka.ms/editorconfigdocs |
| 2 | +############################### |
| 3 | +# Core EditorConfig Options # |
| 4 | +############################### |
| 5 | +# All files |
| 6 | +[*] |
| 7 | +indent_style = space |
| 8 | + |
| 9 | +# XML project files |
| 10 | +[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj}] |
| 11 | +indent_size = 2 |
| 12 | + |
| 13 | +# XML config files |
| 14 | +[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}] |
| 15 | +indent_size = 2 |
| 16 | + |
| 17 | +# Code files |
| 18 | +[*.{cs,csx,vb,vbx}] |
| 19 | +indent_size = 4 |
| 20 | +# insert_final_newline = true |
| 21 | +charset = utf-8-bom |
| 22 | +############################### |
| 23 | +# .NET Coding Conventions # |
| 24 | +############################### |
| 25 | +[*.{cs,vb}] |
| 26 | +# Organize usings |
| 27 | +dotnet_sort_system_directives_first = false |
| 28 | +# this. preferences |
| 29 | +dotnet_style_qualification_for_field = false:silent |
| 30 | +dotnet_style_qualification_for_property = false:silent |
| 31 | +dotnet_style_qualification_for_method = false:silent |
| 32 | +dotnet_style_qualification_for_event = false:silent |
| 33 | +# Language keywords vs BCL types preferences |
| 34 | +dotnet_style_predefined_type_for_locals_parameters_members = true:silent |
| 35 | +dotnet_style_predefined_type_for_member_access = true:silent |
| 36 | +# Parentheses preferences |
| 37 | +dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent |
| 38 | +dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent |
| 39 | +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent |
| 40 | +dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent |
| 41 | +# Modifier preferences |
| 42 | +dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent |
| 43 | +dotnet_style_readonly_field = true:suggestion |
| 44 | +# Expression-level preferences |
| 45 | +dotnet_style_object_initializer = true:suggestion |
| 46 | +dotnet_style_collection_initializer = true:suggestion |
| 47 | +dotnet_style_explicit_tuple_names = true:suggestion |
| 48 | +dotnet_style_null_propagation = true:suggestion |
| 49 | +dotnet_style_coalesce_expression = true:suggestion |
| 50 | +dotnet_style_prefer_is_null_check_over_reference_equality_method = true:silent |
| 51 | +dotnet_style_prefer_inferred_tuple_names = true:suggestion |
| 52 | +dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion |
| 53 | +dotnet_style_prefer_auto_properties = true:silent |
| 54 | +dotnet_style_prefer_conditional_expression_over_assignment = true:silent |
| 55 | +dotnet_style_prefer_conditional_expression_over_return = true:silent |
| 56 | +############################### |
| 57 | +# Naming Conventions # |
| 58 | +############################### |
| 59 | +# Style Definitions |
| 60 | +dotnet_naming_style.pascal_case_style.capitalization = pascal_case |
| 61 | +# Use PascalCase for constant fields |
| 62 | +dotnet_naming_rule.constant_fields_should_be_pascal_case.severity = suggestion |
| 63 | +dotnet_naming_rule.constant_fields_should_be_pascal_case.symbols = constant_fields |
| 64 | +dotnet_naming_rule.constant_fields_should_be_pascal_case.style = pascal_case_style |
| 65 | +dotnet_naming_symbols.constant_fields.applicable_kinds = field |
| 66 | +dotnet_naming_symbols.constant_fields.applicable_accessibilities = * |
| 67 | +dotnet_naming_symbols.constant_fields.required_modifiers = const |
| 68 | +# Instance fields are camelCase and start with _ |
| 69 | +dotnet_naming_rule.instance_fields_should_be_camel_case.severity = suggestion |
| 70 | +dotnet_naming_rule.instance_fields_should_be_camel_case.symbols = instance_fields |
| 71 | +dotnet_naming_rule.instance_fields_should_be_camel_case.style = instance_field_style |
| 72 | +dotnet_naming_symbols.instance_fields.applicable_kinds = field |
| 73 | +dotnet_naming_style.instance_field_style.capitalization = camel_case |
| 74 | +dotnet_naming_style.instance_field_style.required_prefix = _ |
| 75 | +############################### |
| 76 | +# C# Coding Conventions # |
| 77 | +############################### |
| 78 | +[*.cs] |
| 79 | +csharp_style_namespace_declarations = file_scoped:warning |
| 80 | +# var preferences |
| 81 | +csharp_style_var_for_built_in_types = true:silent |
| 82 | +csharp_style_var_when_type_is_apparent = true:silent |
| 83 | +csharp_style_var_elsewhere = true:silent |
| 84 | +# Expression-bodied members |
| 85 | +csharp_style_expression_bodied_methods = false:silent |
| 86 | +csharp_style_expression_bodied_constructors = false:silent |
| 87 | +csharp_style_expression_bodied_operators = false:silent |
| 88 | +csharp_style_expression_bodied_properties = true:silent |
| 89 | +csharp_style_expression_bodied_indexers = true:silent |
| 90 | +csharp_style_expression_bodied_accessors = true:silent |
| 91 | +# Pattern matching preferences |
| 92 | +csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion |
| 93 | +csharp_style_pattern_matching_over_as_with_null_check = true:suggestion |
| 94 | +# Null-checking preferences |
| 95 | +csharp_style_throw_expression = true:suggestion |
| 96 | +csharp_style_conditional_delegate_call = true:suggestion |
| 97 | +# Modifier preferences |
| 98 | +csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:suggestion |
| 99 | +# Expression-level preferences |
| 100 | +csharp_prefer_braces = true:silent |
| 101 | +csharp_style_deconstructed_variable_declaration = true:suggestion |
| 102 | +csharp_prefer_simple_default_expression = true:suggestion |
| 103 | +csharp_style_pattern_local_over_anonymous_function = true:suggestion |
| 104 | +csharp_style_inlined_variable_declaration = true:suggestion |
| 105 | +############################### |
| 106 | +# C# Formatting Rules # |
| 107 | +############################### |
| 108 | +# New line preferences |
| 109 | +csharp_new_line_before_open_brace = all |
| 110 | +csharp_new_line_before_else = true |
| 111 | +csharp_new_line_before_catch = true |
| 112 | +csharp_new_line_before_finally = true |
| 113 | +csharp_new_line_before_members_in_object_initializers = true |
| 114 | +csharp_new_line_before_members_in_anonymous_types = true |
| 115 | +csharp_new_line_between_query_expression_clauses = true |
| 116 | +# Indentation preferences |
| 117 | +csharp_indent_case_contents = true |
| 118 | +csharp_indent_switch_labels = true |
| 119 | +csharp_indent_labels = flush_left |
| 120 | +# Space preferences |
| 121 | +csharp_space_after_cast = false |
| 122 | +csharp_space_after_keywords_in_control_flow_statements = true |
| 123 | +csharp_space_between_method_call_parameter_list_parentheses = false |
| 124 | +csharp_space_between_method_declaration_parameter_list_parentheses = false |
| 125 | +csharp_space_between_parentheses = false |
| 126 | +csharp_space_before_colon_in_inheritance_clause = true |
| 127 | +csharp_space_after_colon_in_inheritance_clause = true |
| 128 | +csharp_space_around_binary_operators = before_and_after |
| 129 | +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false |
| 130 | +csharp_space_between_method_call_name_and_opening_parenthesis = false |
| 131 | +csharp_space_between_method_call_empty_parameter_list_parentheses = false |
| 132 | +# Wrapping preferences |
| 133 | +csharp_preserve_single_line_statements = true |
| 134 | +csharp_preserve_single_line_blocks = true |
| 135 | +############################### |
| 136 | +# VB Coding Conventions # |
| 137 | +############################### |
| 138 | +[*.vb] |
| 139 | +# Modifier preferences |
| 140 | +visual_basic_preferred_modifier_order = Partial,Default,Private,Protected,Public,Friend,NotOverridable,Overridable,MustOverride,Overloads,Overrides,MustInherit,NotInheritable,Static,Shared,Shadows,ReadOnly,WriteOnly,Dim,Const,WithEvents,Widening,Narrowing,Custom,Async:suggestion |
| 141 | + |
| 142 | +############################### |
| 143 | +# StyleCop # |
| 144 | +############################### |
| 145 | +[*.cs] |
| 146 | + |
| 147 | +# SA0001: XML comment analysis is disabled due to project configuration |
| 148 | +dotnet_diagnostic.SA0001.severity = none |
| 149 | + |
| 150 | +# SA1027: Use tabs correctly |
| 151 | +dotnet_diagnostic.SA1027.severity = none |
| 152 | + |
| 153 | +# SA1101: Prefix local calls with this |
| 154 | +dotnet_diagnostic.SA1101.severity = none |
| 155 | + |
| 156 | +# SA1108: Block statements should not contain embedded comments |
| 157 | +dotnet_diagnostic.SA1108.severity = none |
| 158 | + |
| 159 | +# SA1111: Closing parenthesis should be on line of last parameter |
| 160 | +dotnet_diagnostic.SA1111.severity = none |
| 161 | + |
| 162 | +# SA1113: Comma should be on the same line as previous parameter |
| 163 | +dotnet_diagnostic.SA1113.severity = none |
| 164 | + |
| 165 | +# SA1115: Parameter should follow comma |
| 166 | +dotnet_diagnostic.SA1115.severity = none |
| 167 | + |
| 168 | +# SA1116: Split parameters should start on line after declaration |
| 169 | +dotnet_diagnostic.SA1116.severity = none |
| 170 | + |
| 171 | +# SA1117: Parameters should be on same line or separate lines |
| 172 | +dotnet_diagnostic.SA1117.severity = none |
| 173 | + |
| 174 | +# SA1123: Do not place regions within elements |
| 175 | +dotnet_diagnostic.SA1123.severity = none |
| 176 | + |
| 177 | +# SA1124: Do not use regions |
| 178 | +dotnet_diagnostic.SA1124.severity = none |
| 179 | + |
| 180 | +# SA1200: Using directives should be placed correctly |
| 181 | +dotnet_diagnostic.SA1200.severity = none |
| 182 | + |
| 183 | +# SA1201: Elements should appear in the correct order |
| 184 | +dotnet_diagnostic.SA1201.severity = none |
| 185 | + |
| 186 | +# SA1202: Elements should be ordered by access |
| 187 | +dotnet_diagnostic.SA1202.severity = none |
| 188 | + |
| 189 | +# SA1203: Constants should appear before fields |
| 190 | +dotnet_diagnostic.SA1203.severity = none |
| 191 | + |
| 192 | +# SA1204: Static elements should appear before instance elements |
| 193 | +dotnet_diagnostic.SA1204.severity = none |
| 194 | + |
| 195 | +# SA1208: System using directives should be placed before other using directives |
| 196 | +dotnet_diagnostic.SA1208.severity = none |
| 197 | + |
| 198 | +# SA1309: Field names should not begin with underscore |
| 199 | +dotnet_diagnostic.SA1309.severity = none |
| 200 | + |
| 201 | +# SA1310: Field names should not contain underscore |
| 202 | +dotnet_diagnostic.SA1310.severity = none |
| 203 | + |
| 204 | +# SA1402: File may only contain a single type |
| 205 | +dotnet_diagnostic.SA1402.severity = none |
| 206 | + |
| 207 | +# SA1413: Use trailing comma in multi-line initializers |
| 208 | +dotnet_diagnostic.SA1413.severity = none |
| 209 | + |
| 210 | +# SA1516: Elements should be separated by blank line |
| 211 | +dotnet_diagnostic.SA1516.severity = none |
| 212 | + |
| 213 | +# SA1600: Elements should be documented |
| 214 | +dotnet_diagnostic.SA1600.severity = none |
| 215 | + |
| 216 | +# SA1601: Partial elements should be documented |
| 217 | +dotnet_diagnostic.SA1601.severity = none |
| 218 | + |
| 219 | +# SA1602: Enumeration items should be documented |
| 220 | +dotnet_diagnostic.SA1602.severity = none |
| 221 | + |
| 222 | +# SA1610: Property documentation should have value text |
| 223 | +dotnet_diagnostic.SA1610.severity = none |
| 224 | + |
| 225 | +# SA1623: Property summary documentation should match accessors |
| 226 | +dotnet_diagnostic.SA1623.severity = none |
| 227 | + |
| 228 | +# SA1629: Documentation text should end with a period |
| 229 | +dotnet_diagnostic.SA1629.severity = none |
| 230 | + |
| 231 | +# SA1633: File should have header |
| 232 | +dotnet_diagnostic.SA1633.severity = none |
| 233 | + |
| 234 | +# SA1649: File name should match first type name |
| 235 | +dotnet_diagnostic.SA1649.severity = suggestion |
0 commit comments