Compartir a través de


Opciones, Editor de texto, C#, Avanzado

Use la página Opciones avanzadas para modificar la configuración del formato del editor, la refactorización de código y los comentarios de documentación XML para C#. Para acceder a esta página de opciones, elija Opciones de herramientas>y, a continuación, elija Editor> de textoC#>Avanzado.

Nota:

No todas las opciones pueden aparecer aquí.

Análisis

  • Ejecutar análisis de código en segundo plano para ...

    Elija una de las siguientes opciones.

    Opción Descripción
    Ninguno Todos los analizadores y las correcciones de código correspondientes están deshabilitados.

    Los diagnósticos del compilador y las correcciones de código correspondientes están habilitados en todos los documentos abiertos .
    Documento actual (valor predeterminado) Todos los analizadores se ejecutan solo en el documento activo actualmente.

    Los diagnósticos del compilador están habilitados en todos los documentos abiertos .
    Abrir documentos Todos los analizadores y diagnósticos del compilador están habilitados en todos los documentos abiertos .
    Toda la solución Todos los analizadores y diagnósticos del compilador están habilitados en todos los documentos de la solución, ya sean abiertos o cerrados.

Using (Directivas using)

  • Coloque primero las directivas "System" al ordenar los usos

    Cuando se selecciona, el comando Remove and Sort Usings del menú contextual ordena las using directivas y coloca los espacios de nombres "System" en la parte superior de la lista.

    Antes de ordenar:

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

    Después de ordenar:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using AutoMapper;
    using FluentValidation;
    using Newtonsoft.Json;
    
  • Separación de grupos de directivas using

    Cuando se selecciona, el comando Remove and Sort Usings del menú contextual separa using las directivas insertando una línea vacía entre grupos de directivas que tienen el mismo espacio de nombres raíz.

    Antes de ordenar:

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

    Después de ordenar:

    using AutoMapper;
    
    using FluentValidation;
    
    using Newtonsoft.Json;
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    
  • Sugerir usos para tipos en ensamblados de .NET Framework

  • Sugerir usos para tipos en paquetes NuGet

    Cuando se seleccionan estas opciones, hay una acción rápida disponible para instalar un paquete NuGet y agregar una using directiva para tipos sin referencia.

    Acción rápida para instalar el paquete NuGet en Visual Studio

  • Adición de directivas using que faltan al pegar

    Cuando se selecciona esta opción, using las directivas se agregarán automáticamente al código al pegar un tipo en un archivo.

Destacando

  • Resaltar referencias al símbolo bajo el cursor

    Cuando el cursor se coloca dentro de un símbolo, o al hacer clic en un símbolo, se resaltan todas las instancias de ese símbolo en el archivo de código.

esquematizar

  • Especificar el modo de esquematización cuando se abran archivos

    Cuando se selecciona, describe automáticamente el archivo de código, que crea bloques de código contraíbles. La primera vez que se abre un archivo, #regions bloques y bloques de código inactivos se contraen.

  • Mostrar separadores de línea de procedimiento

    El editor de texto indica el ámbito visual de los procedimientos. Se dibuja una línea en los archivos de origen .cs del proyecto en las ubicaciones enumeradas en la tabla siguiente:

    Ubicación en .cs archivo de origen Ejemplo de ubicación de línea
    Después del cierre de una construcción de declaración de bloque - Al final de una clase, estructura, módulo, interfaz o enumeración
    - Después de una propiedad, función o sub
    - No entre las cláusulas get y set de una propiedad
    Después de un conjunto de construcciones de una sola línea - Después de las instrucciones import, antes de una definición de tipo en un archivo de clase
    - Después de las variables declaradas en una clase, antes de cualquier procedimiento
    Después de declaraciones de una sola línea (declaraciones de nivel no de bloque) - Después de las instrucciones de importación, hereda instrucciones, declaraciones de variables, declaraciones de eventos, declaraciones de delegado y instrucciones declare dll

Guías de estructura de bloques

Active estas casillas para mostrar las líneas verticales de puntos entre los corchetes ({}) en el código. A continuación, puede ver fácilmente bloques individuales de código para las construcciones de nivel de declaración y de nivel de código.

Comentarios

  • Generación de comentarios de documentación XML para ///

    Cuando se selecciona, inserta los elementos XML para los comentarios de documentación XML después de escribir la introducción al /// comentario. Para obtener más información sobre la documentación XML, vea Comentarios de documentación XML (Guía de programación de C#).

Extraer método

  • No coloque ref o out en una estructura personalizada

    Desactive esta casilla para evitar la clonación no deseada de estructuras mediante la reexpresión de objetos struct existentes al extraer una expresión en una llamada al método.

    Ejemplo

    Se supone lo siguiente class y struct existe en el 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
        }
    }
    

    Si la opción "Don't put ref or out on custom struct" está desactivada, la característica "Extract method" genera lo siguiente:

    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;
    }
    

    Si la opción "No colocar ref o out en la estructura personalizada" está activada, la característica "Extraer método" genera lo siguiente:

    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;
        }
    }
    

Sugerencias insertadas

  • Sugerencias de nombre de parámetro insertado

    Cuando se selecciona, inserta sugerencias de nombre de parámetro para literales, literales de conversión y instancias de objeto antes de cada argumento en las llamadas de función.

    Sugerencias de nombre de parámetro insertado para CSharp

  • Sugerencias de tipo insertadas

    Cuando se selecciona, inserta sugerencias de tipo para variables con tipos inferidos y tipos de parámetros lambda.

    Sugerencias de tipo insertadas para CSharp

Margen de herencia

  • Cuando se selecciona, agrega iconos a los márgenes que representan las implementaciones e invalidaciones del código. Al hacer clic en los iconos de margen de herencia se mostrarán las opciones de herencia a las que puede seleccionar navegar.

    Margen de herencia

Consulte también