Partilhar via


Opções, Editor de Texto, C#, Avançado

Use a página Opções avançadas para modificar as configurações de formatação do editor, refatoração de código e comentários da documentação XML para C#. Para aceder a esta página de opções, escolha Opções de Ferramentas> e, em seguida, selecione Editor de>C#>Advanced.

Observação

Nem todas as opções podem ser listadas aqui.

Análise

  • Execute a análise de código em segundo plano para ...

    Escolha uma das seguintes opções.

    Opção Descrição
    Nenhum Todos os analisadores e correções de código correspondentes estão desativados.

    O diagnóstico do compilador e as correções de código correspondentes estão habilitados em todos os documentos abertos .
    Documento atual (padrão) Todos os analisadores são executados apenas no documento ativo no momento.

    O diagnóstico do compilador está habilitado em todos os documentos abertos .
    Abrir documentos Todos os analisadores e diagnósticos do compilador estão habilitados em todos os documentos abertos .
    Solução completa Todos os analisadores e diagnósticos do compilador estão habilitados em todos os documentos da solução, sejam eles abertos ou fechados.

Utilização de diretivas

  • Coloque as diretivas 'System' em primeiro lugar ao classificar os usos

    Quando selecionado, o comando Remover e classificar usos no menu do botão direito do mouse classifica as using diretivas e coloca os namespaces 'Sistema' no topo da lista.

    Antes de classificar:

    using AutoMapper;
    using FluentValidation;
    using System.Collections.Generic;
    using System.Linq;
    using Newtonsoft.Json;
    using System;
    

    Após a classificação:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using AutoMapper;
    using FluentValidation;
    using Newtonsoft.Json;
    
  • Separar usando grupos de diretivas

    Quando selecionado, o comando Remover e classificar usos no menu do botão direito do mouse separa using diretivas inserindo uma linha vazia entre grupos de diretivas que têm o mesmo namespace raiz.

    Antes de classificar:

    using AutoMapper;
    using FluentValidation;
    using System.Collections.Generic;
    using System.Linq;
    using Newtonsoft.Json;
    using System;
    

    Após a classificação:

    using AutoMapper;
    
    using FluentValidation;
    
    using Newtonsoft.Json;
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    
  • Sugerir usos para tipos em assemblies do .NET Framework

  • Sugerir usos para tipos em pacotes NuGet

    Quando essas opções são selecionadas, uma Ação Rápida está disponível para instalar um pacote NuGet e adicionar uma using diretiva para tipos não referenciados.

    Ação rápida para instalar o pacote NuGet no Visual Studio

  • Adicionar ausente usando diretivas em colar

    Quando essa opção é selecionada, using as diretivas serão adicionadas automaticamente ao seu código quando você colar um tipo em um arquivo.

Destaque

  • Realçar referências ao símbolo sob o cursor

    Quando o cursor é posicionado dentro de um símbolo, ou quando você clica em um símbolo, todas as ocorrências desse símbolo no arquivo de código são realçadas.

Esboço

  • Entre no modo de contorno quando os arquivos forem abertos

    Quando selecionado, descreve automaticamente o arquivo de código, que cria blocos de código recolhíveis. Na primeira vez que um arquivo é aberto, #regions blocos e blocos de código inativos são recolhidos.

  • Mostrar separadores de linha de procedimento

    O editor de texto indica o escopo visual dos procedimentos. Uma linha é desenhada nos arquivos de origem .cs do seu projeto nos locais listados na tabela a seguir:

    Localização em .cs arquivo de origem Exemplo de localização da linha
    Após o fechamento de uma construção de declaração de bloco - No final de uma classe, estrutura, módulo, interface ou enum
    - Depois de uma propriedade, função ou sub
    - Não entre as cláusulas get e set em um imóvel
    Após um conjunto de construções de linha única - Após as instruções de importação, antes de uma definição de tipo em um arquivo de classe
    - Após variáveis declaradas em uma classe, antes de quaisquer procedimentos
    Após declarações de linha única (declarações sem bloco) - Seguindo instruções de importação, herda instruções, declarações de variáveis, declarações de eventos, declarações de delegados e declarações de declaração DLL

Guias de estrutura de blocos

Marque essas caixas de seleção para exibir linhas verticais pontilhadas entre os colchetes ({}) no código. Em seguida, você pode ver facilmente blocos individuais de código para seu nível de declaração e construções de nível de código.

Observações

Método de Extração

  • Não coloque ref ou out em custom struct

    Desmarque essa caixa de seleção para evitar a clonagem potencialmente não intencional de structs fazendo referência a objetos struct existentes ao extrair uma expressão em uma chamada de método.

    Exemplo

    Suponha o seguinte class e struct exista no seu código:

    public struct CustomStruct
    {
        private int Count;
    
        public int Bump => ++Count;
    }
    
    public class CustomClass
    {
        public void DoIt()
        {
           CustomStruct cs = new CustomStruct();
           int i = 0;
    
           i += cs.Bump;   // select this line
        }
    }
    

    Se a opção "Don't put ref or out on custom struct" estiver desmarcada, o recurso "Extract method" gerará o seguinte:

    public class CustomClass
    {
        public void DoIt()
        {
           CustomStruct cs = new CustomStruct();
           int i = 0;
    
           NewMethod(ref cs, ref i);
        }
    
        private static void NewMethod(ref CustomStruct cs, ref int i)
           => i += cs.Bump;
    }
    

    Se a opção "Don't put ref or out on custom struct" estiver marcada, o recurso "Extract method" gerará o seguinte:

    public class CustomClass
    {
        public void DoIt()
        {
           CustomStruct cs = new CustomStruct();
           int i = 0;
    
           i = NewMethod(cs, i);
        }
    
        private static int NewMethod(CustomStruct cs, int i)
        {
           i += cs.Bump;
           return i;
        }
    }
    

Dicas em linha

  • Dicas de nome de parâmetro embutido

    Quando selecionado, insere dicas de nome de parâmetro para literais, literais de conversão e instanciações de objeto antes de cada argumento em chamadas de função.

    Dicas de nome de parâmetro embutido para CSharp

  • Dicas de tipo embutido

    Quando selecionado, insere dicas de tipo para variáveis com tipos inferidos e tipos de parâmetros lambda.

    Dicas de tipo embutido para CSharp

Margem de herança

  • Quando selecionado, adiciona ícones às margens que representam as implementações e substituições do seu código. Clicar nos ícones da margem de herança exibirá as opções de herança que você pode selecionar para navegar.

    Margem de herança

Ver também