Last active
December 21, 2020 15:12
-
-
Save sleemer/000b95a960f4673e644b76d1771b544f to your computer and use it in GitHub Desktop.
My config files for .net projects
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# EditorConfig is awesome:http://EditorConfig.org | |
# top-most EditorConfig file | |
root = true | |
# Don't use tabs for indentation. | |
[*] | |
indent_style = space | |
# (Please don't specify an indent_size here; that has too many unintended consequences.) | |
# We recommend you to keep these unchanged | |
end_of_line = crlf | |
charset = utf-8 | |
trim_trailing_whitespace = true | |
insert_final_newline = true | |
[*.md] | |
trim_trailing_whitespace = false | |
# Code files | |
[*.{cs,csx,vb,vbx}] | |
indent_size = 4 | |
# Xml project files | |
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj}] | |
indent_size = 2 | |
# Xml config files | |
[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}] | |
indent_size = 2 | |
# Teamcity build files | |
[.teamcity/**/*.xml] | |
indent_size = 2 | |
# JSON files | |
[*.json] | |
indent_size = 2 | |
# YAML files | |
[*.{yaml,yml}] | |
indent_size = 2 | |
# Dotnet code style settings: | |
[*.{cs,vb}] | |
# Sort using and Import directives with System.* appearing first | |
dotnet_sort_system_directives_first = true | |
# Avoid "this." and "Me." if not necessary | |
dotnet_style_qualification_for_field = false:suggestion | |
dotnet_style_qualification_for_property = false:suggestion | |
dotnet_style_qualification_for_method = false:suggestion | |
dotnet_style_qualification_for_event = false:suggestion | |
# Use language keywords instead of framework type names for type references | |
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion | |
dotnet_style_predefined_type_for_member_access = true:suggestion | |
# Suggest more modern language features when available | |
dotnet_style_object_initializer = true:suggestion | |
dotnet_style_collection_initializer = true:suggestion | |
dotnet_style_coalesce_expression = true:suggestion | |
dotnet_style_null_propagation = true:suggestion | |
dotnet_style_explicit_tuple_names = true:suggestion | |
# CSharp code style settings: | |
[*.cs] | |
# Prefer "var" everywhere | |
csharp_style_var_for_built_in_types = true:suggestion | |
csharp_style_var_when_type_is_apparent = true:suggestion | |
csharp_style_var_elsewhere = true:suggestion | |
# Prefer method-like constructs to have a block body | |
csharp_style_expression_bodied_methods = false:none | |
csharp_style_expression_bodied_constructors = false:none | |
csharp_style_expression_bodied_operators = false:none | |
# Prefer property-like constructs to have an expression-body | |
csharp_style_expression_bodied_properties = true:none | |
csharp_style_expression_bodied_indexers = true:none | |
csharp_style_expression_bodied_accessors = true:none | |
# Suggest more modern language features when available | |
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion | |
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | |
csharp_style_inlined_variable_declaration = true:suggestion | |
csharp_style_throw_expression = true:suggestion | |
csharp_style_conditional_delegate_call = true:suggestion | |
# Newline settings | |
csharp_new_line_before_open_brace = all | |
csharp_new_line_before_else = true | |
csharp_new_line_before_catch = true | |
csharp_new_line_before_finally = true | |
csharp_new_line_before_members_in_object_initializers = true | |
csharp_new_line_before_members_in_anonymous_types = true | |
#### Naming styles #### | |
# Naming rules | |
# Instance fields are camelCase and start with _ | |
dotnet_naming_rule.instance_fields_should_be_camel_case.severity = suggestion | |
dotnet_naming_rule.instance_fields_should_be_camel_case.symbols = instance_fields | |
dotnet_naming_rule.instance_fields_should_be_camel_case.style = instance_field_style | |
dotnet_naming_symbols.instance_fields.applicable_kinds = field | |
dotnet_naming_symbols.instance_fields.applicable_accessibilities = private, protected, internal, protected internal, private protected | |
dotnet_naming_style.instance_field_style.capitalization = camel_case | |
dotnet_naming_style.instance_field_style.required_prefix = _ | |
# Constants are PascalCase | |
dotnet_naming_rule.constants_should_be_pascal_case.severity = suggestion | |
dotnet_naming_rule.constants_should_be_pascal_case.symbols = constants | |
dotnet_naming_rule.constants_should_be_pascal_case.style = constant_style | |
dotnet_naming_symbols.constants.applicable_kinds = field, local | |
dotnet_naming_symbols.constants.required_modifiers = const | |
dotnet_naming_style.constant_style.capitalization = pascal_case |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# IDE | |
.vs/ | |
.vscode/ | |
.idea/ | |
# Build artefacts | |
[Oo]bj/ | |
[Bb]in/ | |
msbuild.log | |
msbuild.err | |
msbuild.wrn | |
msbuild.binlog | |
# Benchmark | |
BenchmarkDotNet.Artifacts/ | |
# User-specific files | |
*.suo | |
*.user | |
*.userosscache | |
*.sln.docstates | |
.env | |
# ReSharper | |
_ReSharper*/ | |
*.[Rr]e[Ss]harper | |
*.DotSettings.user | |
# StyleCop | |
StyleCopReport.xml | |
StyleCop.Cache |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<Project> | |
<PropertyGroup> | |
<Version>1.0.0</Version> | |
<LangVersion>9.0</LangVersion> | |
<CodeAnalysisRuleSet>..\StyleCop.ruleset</CodeAnalysisRuleSet> | |
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> | |
</PropertyGroup> | |
<ItemGroup> | |
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118"> | |
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> | |
<PrivateAssets>all</PrivateAssets> | |
</PackageReference> | |
</ItemGroup> | |
</Project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?> | |
<RuleSet Name="Rules for WebAPI" Description="Code analysis rules for Web API" ToolsVersion="15.0"> | |
<Include Path="minimumrecommendedrules.ruleset" Action="Default" /> | |
<Rules AnalyzerId="StyleCop.Analyzers" RuleNamespace="StyleCop.Analyzers"> | |
<Rule Id="SA0001" Action="None" /> | |
<Rule Id="SA1101" Action="None" /> | |
<Rule Id="SA1118" Action="None" /> | |
<Rule Id="SA1309" Action="None" /> | |
<Rule Id="SA1600" Action="None" /> | |
<Rule Id="SA1602" Action="None" /> | |
<Rule Id="SA1633" Action="None" /> | |
<Rule Id="SA1652" Action="None" /> | |
</Rules> | |
<Rules AnalyzerId="Microsoft.CodeAnalysis.Analyzers" RuleNamespace="Microsoft.CodeAnalysis.Analyzers"> | |
<Rule Id="RS1001" Action="Error" /> | |
<Rule Id="RS1004" Action="Error" /> | |
<Rule Id="RS1009" Action="Error" /> | |
</Rules> | |
<Rules AnalyzerId="Microsoft.CodeAnalysis.CSharp.Analyzers" RuleNamespace="Microsoft.CodeAnalysis.CSharp.Analyzers"> | |
<Rule Id="RS1002" Action="Error" /> | |
<Rule Id="RS1003" Action="Error" /> | |
<Rule Id="RS1005" Action="Error" /> | |
<Rule Id="RS1006" Action="Error" /> | |
<Rule Id="RS1007" Action="Error" /> | |
<Rule Id="RS1008" Action="Error" /> | |
<Rule Id="RS1010" Action="Error" /> | |
<Rule Id="RS1011" Action="Error" /> | |
<Rule Id="RS1012" Action="Error" /> | |
<Rule Id="RS1013" Action="Error" /> | |
<Rule Id="RS1014" Action="Error" /> | |
</Rules> | |
</RuleSet> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment