Preferências de estilo de código

Você pode definir as configurações de estilo do código por projeto usando um arquivo EditorConfig ou para todo o código que editar no Visual Studio na página Opções do editor de texto. Para o código C#, também é possível configurar o Visual Studio para aplicar essas preferências de estilo de código usando os comandos Limpeza de código (Visual Studio 2019, Visual Studio 2022) e Formatar documento (Visual Studio 2017).

Observação

Este tópico aplica-se ao Visual Studio no Windows. Para o Visual Studio para Mac, confira Comportamento do editor no Visual Studio para Mac.

Estilos de código em arquivos EditorConfig

As configurações de estilo de código para .NET podem ser especificadas com a adição de um EditorConfig ao seu projeto. Os arquivos EditorConfig são associados a uma base de códigos em vez de uma conta de personalização do Visual Studio. As configurações em um arquivo EditorConfig têm precedência sobre os estilos de código que são especificados na caixa de diálogo Opções. Use um arquivo EditorConfig quando quiser impor estilos de codificação para todos os fatores que contribuem para o seu repositório ou projeto.

Você pode preencher manualmente o arquivo EditorConfig ou gerar automaticamente um arquivo com base nas configurações de estilo de código definidas na caixa de diálogo Opções do Visual Studio. Essa página de opções está disponível em Ferramentas>Opções>Editor de texto> [C# ou Basic] >Estilo de código>Geral. Clique em Gerar arquivo .editorconfig das configurações para gerar automaticamente um arquivo .editorconfig de estilo de codificação com base nas configurações na página Opções.

Screenshot of Generate editorconfig file from settings.

Você pode preencher manualmente o arquivo EditorConfig ou gerar automaticamente um arquivo com base nas configurações de estilo de código definidas na caixa de diálogo Opções do Visual Studio. Essa página de opções está disponível em Ferramentas>Opções>Editor de texto> [C# ou Visual Basic] >Estilo de código>Geral. Clique em Gerar arquivo .editorconfig das configurações para gerar automaticamente um arquivo .editorconfig de estilo de codificação com base nas configurações na página Opções.

Screenshot of Generate editorconfig file from settings.

Estilos de código na caixa de diálogo Opções

As preferências de estilo de código podem ser definidas para todos os seus projetos C# e do Visual Basic abrindo a caixa de diálogo Opções no menu Ferramentas. Na caixa de diálogo Opções, selecione Editor de Texto> [C# ou Visual Basic] >Estilo de código>Geral.

As preferências de estilo de código podem ser definidas para todos os seus projetos C# e do Visual Basic abrindo a caixa de diálogo Opções no menu Ferramentas. Na caixa de diálogo Opções, selecione Editor de Texto> [C# ou Basic] >Estilo de código>Geral.

Cada item na lista mostra uma versão prévia da preferência quando selecionada:

Screenshot of code style options.

Screenshot of code style options.

As opções definidas nessa janela são aplicáveis à sua conta de personalização do Visual Studio e não estão associadas a um determinado projeto ou base de códigos. Além disso, elas não são impostas no tempo de compilação, inclusive em builds de CI (integração contínua). Se você quiser associar as preferências de estilo de código ao seu projeto e ter os estilos impostos durante a criação, especifique as preferências em um arquivo .editorconfig que foi associado ao projeto.

Preferência e gravidade

Em cada configuração de estilo de código nessa página, é possível definir os valores de Preferência e Gravidade usando as listas suspensas de cada linha. A gravidade pode ser definida como Somente Refatoração, Sugestão, Aviso ou Erro. Se você quiser habilitar Ações Rápidas para um estilo de código, verifique se a configuração de Gravidade está definida como algo diferente de Somente Refatoração. O ícone de lâmpada Ações Rápidas, lâmpada de erro ou chave de fenda aparece quando um estilo não preferencial é usado. É possível escolher uma opção na lista Ações Rápidas para reescrever o código automaticamente no estilo preferencial.

Impor estilo de código na compilação

A partir do Visual Studio 2019 versão 16.8, que inclui o SDK do .NET 5.0 RC2, é possível impor as convenções de codificação do .NET na compilação para todos os projetos do .NET. No momento da compilação, as violações de estilo de código aparecem como avisos ou erros com o prefixo "IDE". Assim, você pode impor estritamente estilos de código de acordo com sua base de código.

Aplicar estilos de código

Para arquivos de código C#, o Visual Studio tem um botão Limpeza de código na parte inferior do editor (teclado: Ctrl+K, Ctrl+E) para aplicar estilos de código de um arquivo EditorConfig ou da página opções estilo de código. Se um arquivo .editorconfig existir para o projeto, essas serão as configurações com precedência.

Screenshot of Execute code cleanup.

Dica

As regras configuradas com uma gravidade de Nenhum não participam da limpeza de código, mas podem ser aplicadas individualmente por meio do menu Ações rápidas e refatorações.

Primeiramente, configure quais estilos de código deseja aplicar (em um dos dois perfis) na caixa de diálogo Configurar limpeza de código. Para abrir essa caixa de diálogo, clique na seta de expansão ao lado do ícone de vassoura de limpeza de código e, em seguida, escolha Configurar limpeza de código.

Screenshot of Configure Code Cleanup.

Depois que tiver configurado a limpeza de código, você poderá clicar no ícone de vassoura ou pressionar Ctrl+K, Ctrl+E para executar a limpeza de código. Você também pode fazer a limpeza de código em todo o projeto ou em toda a solução. Clique com o botão direito do mouse no nome do projeto ou da solução no Gerenciador de Soluções, selecione Análise e Limpeza de Código e selecione Executar Limpeza de Código.

Screenshot of Run Code Cleanup across entire project or solution.

Para arquivos de código C#, o Visual Studio tem um botão Limpeza de código na parte inferior do editor (teclado: Ctrl+K, Ctrl+E) para aplicar estilos de código de um arquivo EditorConfig ou da página opções estilo de código. Se um arquivo .editorconfig existir para o projeto, essas serão as configurações com precedência.

Screenshot of Execute code cleanup.

Dica

As regras configuradas com uma gravidade de Nenhum não participam da limpeza de código, mas podem ser aplicadas individualmente por meio do menu Ações rápidas e refatorações.

Primeiramente, configure quais estilos de código deseja aplicar (em um dos dois perfis) na caixa de diálogo Configurar limpeza de código. Para abrir essa caixa de diálogo, clique na seta de expansão ao lado do ícone de vassoura de limpeza de código e, em seguida, escolha Configurar limpeza de código.

Screenshot of Configure Code Cleanup.

Depois que tiver configurado a limpeza de código, você poderá clicar no ícone de vassoura ou pressionar Ctrl+K, Ctrl+E para executar a limpeza de código. Você também pode fazer a limpeza de código em todo o projeto ou em toda a solução. Clique com o botão direito do mouse no nome do projeto ou da solução no Gerenciador de Soluções, selecione Análise e Limpeza de Código e selecione Executar Limpeza de Código.

Screenshot of Run Code Cleanup across entire project or solution.

Configurações de limpeza de código

A maioria das configurações de limpeza de código é mapeada para um ou mais estilos de código .NET compatível com .editorconfig. Para obter exemplos que mostram os efeitos das configurações, use os links da tabela a seguir.

Configuração ID da regra ou opção de estilo
Remover Importações ou usos desnecessários IDE0005
Aplicar preferências de cabeçalho de arquivo file_header_template
Remover variáveis não utilizadas IDE0051
Aplicar preferências de criação de objeto visual_basic_style_prefer_simplified_object_creation
Aplicar preferências de IsNot visual_basic_style_prefer_isnot_expression
Adicionar a qualificação “este” ou “Eu” IDE0003-IDE0009
Adicionar modificadores de acessibilidade dotnet_style_require_accessibility_modifiers
Modificadores de ordem IDE0036
Tornar campo “somente leitura” dotnet_style_readonly_field
Remover conversões desnecessárias IDE0004
Aplicar parâmetros de inicialização de objeto/coleção) dotnet_style_object_initializer
Aplicar preferências de uso de posicionamento de diretiva csharp_using_directive_placement
Aplicar preferências de parênteses IDE0047-IDE0048
Aplicar preferências de valor não utilizadas IDE0058
Aplicar preferências de tipo de linguagem/estrutura IDE0049
Remover supressões não utilizadas dotnet_remove_unnecessary_suppression_exclusions
Aplicar simplificar preferências de expressão booliana dotnet_style_prefer_simplified_boolean_expressions
Aplicar preferências de interpolação de cadeia de caracteres dotnet_style_prefer_simplified_interpolation
Remover parâmetros não usados dotnet_code_quality_unused_parameters
Aplicar preferências de propriedade automática dotnet_style_prefer_auto_properties
Aplicar preferências de atribuição composta dotnet_style_prefer_compound_assignment
Aplicar preferências de expressão de união dotnet_style_coalesce_expression
Aplicar preferências de expressão condicional dotnet_style_prefer_conditional_expression_over_assignment
dotnet_style_prefer_conditional_expression_over_return
Aplicar preferências de nome de tupla dotnet_style_explicit_tuple_names
dotnet_style_prefer_inferred_tuple_names
Aplicar preferências de nomes de membros do tipo anônimo inferido dotnet_style_prefer_inferred_anonymous_type_member_names
Aplicar preferências de verificação nula dotnet_style_prefer_is_null_check_over_reference_equality_method
Aplicar preferências de propagação nula dotnet_style_null_propagation
Aplicar preferências de “var” IDE0007-IDE0008
Adicionar as chaves necessárias para as instruções de controle de linha única csharp_prefer_braces
Aplicar preferências de corpo de expressão/bloco Membros aptos para expressão
Aplicar preferências de variáveis 'out' embutidas csharp_style_inlined_variable_declaration
Aplicar preferências de padrões correspondentes Preferências de padrões correspondentes
Aplicar preferências de chamada de delegado condicional csharp_style_conditional_delegate_call
Aplicar preferências de função local estática csharp_prefer_static_local_function
Aplicar preferências de desconstrução csharp_style_deconstructed_variable_declaration
Aplicar preferências padrão(T) csharp_prefer_simple_default_expression
Aplicar novas() preferências csharp_style_implicit_object_creation_when_type_is_apparent
Aplicar preferências de intervalo csharp_style_prefer_range_operator
Aplicar preferências de função locais em vez de anônimas csharp_style_pattern_local_over_anonymous_function
Aplicar preferências nulas de parâmetro Preferências de verificação nula
Aplicar preferências de uso de instrução csharp_prefer_simple_using_statement
Aplicar preferências de expressão throw csharp_style_throw_expression

Se você quiser que as configurações de estilo de código sejam aplicadas sempre que salvar um arquivo, acesse Opções>Editor de texto>Limpeza de código e selecione Executar perfil de Limpeza de Código ao salvar.

Se quiser que as configurações de estilo de código sejam aplicadas sempre que salvar um arquivo, você apreciará a extensão Limpeza de código ao salvar.