1+ [* .cs ]
2+
3+ # SA0001: XML comment analysis is disabled due to project configuration
4+ dotnet_diagnostic.SA0001.severity = none
5+
6+ # SA1124: Do not use regions
7+ dotnet_diagnostic.SA1124.severity = none
8+
9+ # SA1200: Using directives should be placed correctly
10+ dotnet_diagnostic.SA1200.severity = none
11+
12+ # SA1101: Prefix local calls with this
13+ dotnet_diagnostic.SA1101.severity = none
14+
15+ # SA1119: Statement must not use unnecessary parenthesis
16+ dotnet_diagnostic.SA1119.severity = none
17+
18+ # SA1027: Use tabs correctly
19+ dotnet_diagnostic.SA1027.severity = warning
20+
21+ # SA1300: Element should begin with upper-case letter
22+ dotnet_diagnostic.SA1300.severity = none
23+
24+ # SA1309: Field names should not begin with underscore
25+ dotnet_diagnostic.SA1309.severity = warning
26+
27+ # SA1310: Field names should not contain underscore
28+ dotnet_diagnostic.SA1310.severity = none
29+
30+ # SA1404: Code analysis suppression should have justification
31+ dotnet_diagnostic.SA1404.severity = error
32+
33+ # SA1407: Arithmetic expressions must declare precedence
34+ dotnet_diagnostic.SA1407.severity = none
35+
36+ # SA1503: Braces must not be omitted
37+ dotnet_diagnostic.SA1503.severity = warning
38+
39+ # SA1516: Elements must be separated by blank line
40+ dotnet_diagnostic.SA1516.severity = error
41+
42+ # SA1520: Use braces consistently
43+ dotnet_diagnostic.SA1520.severity = error
44+
45+ # SA1600: Elements should be documented
46+ dotnet_diagnostic.SA1600.severity = none
47+
48+ # SA1601: Partial elements should be documented
49+ dotnet_diagnostic.SA1601.severity = none
50+
51+ # SA1602: Enumeration items must be documented
52+ dotnet_diagnostic.SA1602.severity = none
53+
54+ # SA1604: Element documentation should have summary
55+ dotnet_diagnostic.SA1604.severity = none
56+
57+ # SA1611: Element parameters must be documented
58+ dotnet_diagnostic.SA1611.severity = none
59+
60+ # SA1615: Element return value should be documented
61+ dotnet_diagnostic.SA1615.severity = none
62+
63+ # SA1618: The documentation for the type parameter is missing
64+ dotnet_diagnostic.SA1618.severity = none
65+
66+ # SA1623: The property's documentation summary text should begin with
67+ dotnet_diagnostic.SA1623.severity = none
68+
69+ # SA1629: Documentation text should and with a period
70+ dotnet_diagnostic.SA1629.severity = none
71+
72+ # SA1633: File should have header
73+ dotnet_diagnostic.SA1633.severity = none
74+
75+ # SA1642: Constructor summary documentation should begin with standard text
76+ dotnet_diagnostic.SA1642.severity = none
77+
78+ # SX1309: Field names should begin with underscore
79+ dotnet_diagnostic.SX1309.severity = none
80+
81+ # IDE0058: Expression value is never used
82+ dotnet_diagnostic.IDE0058.severity = none
83+
84+ # IDE0008: Use explicit type
85+ dotnet_diagnostic.IDE0008.severity = none
86+
87+ # IDE0083: Use pattern matching
88+ dotnet_diagnostic.IDE0083.severity = none
89+
90+ # IDE0090: Use 'new(...)'
91+ dotnet_diagnostic.IDE0090.severity = none
92+
93+ # CA1001: Types that own disposable fields should be disposable
94+ dotnet_diagnostic.CA1001.severity = error
95+
96+ # CS1573: Parameter has no matching param tag in the XML comment
97+ dotnet_diagnostic.CS1573.severity = none
98+
99+ # CS1591: Missing XML comment for publicly visible type or member
100+ dotnet_diagnostic.CS1591.severity = none
101+
102+ # CS1712: Type parameter has no matching typeparam tag in the XML comment
103+ dotnet_diagnostic.CS1712.severity = none
104+
105+ csharp_indent_labels = one_less_than_current
106+ csharp_using_directive_placement = outside_namespace:silent
107+ csharp_prefer_simple_using_statement = true :suggestion
108+ csharp_prefer_braces = true :silent
109+ # csharp_prefer_braces = when_multiline:warning
110+ csharp_style_namespace_declarations = block_scoped:silent
111+ csharp_style_prefer_method_group_conversion = true :silent
112+ csharp_style_prefer_top_level_statements = true :silent
113+ csharp_style_expression_bodied_methods = false :silent
114+ csharp_style_expression_bodied_constructors = false :silent
115+ csharp_style_expression_bodied_operators = false :silent
116+ csharp_style_expression_bodied_properties = true :silent
117+ csharp_style_expression_bodied_indexers = true :silent
118+ csharp_style_expression_bodied_accessors = true :silent
119+ csharp_style_expression_bodied_lambdas = true :silent
120+ csharp_style_expression_bodied_local_functions = false :silent
121+ csharp_style_prefer_primary_constructors = true :suggestion
122+ csharp_prefer_system_threading_lock = true :suggestion
123+ csharp_preserve_single_line_statements = true
124+ csharp_preserve_single_line_blocks = true
125+ csharp_new_line_before_else = true
126+ csharp_new_line_before_catch = true
127+ csharp_new_line_before_finally = true
128+ csharp_new_line_before_open_brace = all
129+
130+ [* .{cs,vb} ]
131+ # ### Naming styles ####
132+
133+ # Naming rules
134+
135+ dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
136+ dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
137+ dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
138+
139+ dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion
140+ dotnet_naming_rule.types_should_be_pascal_case.symbols = types
141+ dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
142+
143+ dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion
144+ dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
145+ dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
146+
147+ # Symbol specifications
148+
149+ dotnet_naming_symbols.interface.applicable_kinds = interface
150+ dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
151+ dotnet_naming_symbols.interface.required_modifiers =
152+
153+ dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
154+ dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
155+ dotnet_naming_symbols.types.required_modifiers =
156+
157+ dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
158+ dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
159+ dotnet_naming_symbols.non_field_members.required_modifiers =
160+
161+ dotnet_naming_symbols.private_fields.applicable_kinds = field
162+ dotnet_naming_symbols.private_fields.applicable_accessibilities = private
163+ dotnet_naming_symbols.private_fields.required_modifiers =
164+
165+ dotnet_naming_symbols.private_static_readonly_fields.applicable_kinds = field
166+ dotnet_naming_symbols.private_static_readonly_fields.applicable_accessibilities = private
167+ dotnet_naming_symbols.private_static_readonly_fields.required_modifiers = static, readonly
168+
169+ dotnet_naming_symbols.private_const_fields.applicable_kinds = field
170+ dotnet_naming_symbols.private_const_fields.applicable_accessibilities = private
171+ dotnet_naming_symbols.private_const_fields.required_modifiers = const
172+
173+
174+ # Naming styles
175+
176+ dotnet_naming_style.begins_with_i.required_prefix = I
177+ dotnet_naming_style.begins_with_i.required_suffix =
178+ dotnet_naming_style.begins_with_i.word_separator =
179+ dotnet_naming_style.begins_with_i.capitalization = pascal_case
180+
181+ dotnet_naming_style.pascal_case.required_prefix =
182+ dotnet_naming_style.pascal_case.required_suffix =
183+ dotnet_naming_style.pascal_case.word_separator =
184+ dotnet_naming_style.pascal_case.capitalization = pascal_case
185+
186+ dotnet_naming_style.notunderscored.capitalization = camel_case
187+ dotnet_naming_style.notunderscored.required_prefix =
188+
189+ dotnet_naming_rule.private_fields_notunderscored.symbols = private_fields
190+ dotnet_naming_rule.private_fields_notunderscored.style = notunderscored
191+ dotnet_naming_rule.private_fields_notunderscored.severity = error
192+
193+ dotnet_naming_rule.private_static_readonly_fields_pascal_case.symbols = private_static_readonly_fields
194+ dotnet_naming_rule.private_static_readonly_fields_pascal_case.style = pascal_case
195+ dotnet_naming_rule.private_static_readonly_fields_pascal_case.severity = error
196+
197+ dotnet_naming_rule.private_const_fields_pascal_case.symbols = private_const_fields
198+ dotnet_naming_rule.private_const_fields_pascal_case.style = pascal_case
199+ dotnet_naming_rule.private_const_fields_pascal_case.severity = warning
200+
201+ # Other style options
202+
203+ dotnet_style_operator_placement_when_wrapping = beginning_of_line
204+
205+ dotnet_style_coalesce_expression = true :suggestion
206+ dotnet_style_null_propagation = true :suggestion
207+ dotnet_style_prefer_is_null_check_over_reference_equality_method = true :suggestion
208+ dotnet_style_prefer_auto_properties = true :silent
209+ dotnet_style_object_initializer = true :suggestion
210+ dotnet_style_collection_initializer = true :suggestion
211+ dotnet_style_prefer_simplified_boolean_expressions = true :suggestion
212+ dotnet_style_prefer_conditional_expression_over_assignment = true :silent
213+ dotnet_style_prefer_conditional_expression_over_return = true :silent
214+ dotnet_style_explicit_tuple_names = true :suggestion
215+
216+ dotnet_style_prefer_inferred_tuple_names = true :suggestion
217+ dotnet_style_prefer_inferred_anonymous_type_member_names = true :suggestion
218+ dotnet_style_prefer_compound_assignment = true :suggestion
219+ dotnet_style_prefer_simplified_interpolation = true :suggestion
220+
221+ dotnet_style_qualification_for_field = true :warning
222+ dotnet_style_qualification_for_property = false :warning
223+ dotnet_style_qualification_for_method = false :warning
224+ dotnet_style_qualification_for_event = false :warning
225+
226+ dotnet_sort_system_directives_first = true
227+
228+ tab_width = 4
229+ indent_size = 4
230+ end_of_line = crlf
231+ trim_trailing_whitespace = true
0 commit comments