Opciones, editor de texto, C#, avanzado

Use la página de opciones Avanzado 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 obtener acceso a esta página de opciones, elija Herramientas>Opciones y, después, elija Editor de texto>C#>Avanzado.

Nota

Puede ser que aquí no aparezcan todas las opciones.

Análisis

  • Ejecutar Code Analysis en segundo plano para...

    Elija una de las opciones siguientes:

    Opción Description
    None Todos los analizadores y las correcciones de código correspondientes están deshabilitadas.

    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.
    Documentos abiertos 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, tanto si están abiertos como cerrados.

Directivas using

  • Aplicar primero directivas "System" al ordenar instrucciones Using

    Cuando se selecciona el comando Eliminar y ordenar instrucciones Using en el menú contextual, ordena las directivas using 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;
    
  • Separar grupos de directivas using

    Cuando se selecciona, el comando Eliminar y ordenar instrucciones Using en el menú contextual separa las directivas using al insertar una línea vacía entre los grupos de directivas con 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 .NET Framework

  • Sugerir usos para tipos de paquetes NuGet

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

    Quick Action to install NuGet package in Visual Studio

  • Agregar las directivas using que faltan al pegar

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

Resaltado

  • Resaltar referencias al símbolo bajo el cursor

    Cuando el cursor esté colocado dentro de un símbolo, o cuando haga clic en un símbolo, todas las instancias de ese símbolo en el archivo de código se resaltan.

esquematizar

  • Especificar el modo de esquematización al abrir los archivos

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

  • Mostrar separadores de línea de procedimientos

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

    Ubicación en el archivo de código fuente .cs 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 línea única - 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 línea única (declaraciones de nivel que no sea de bloque) - Después de instrucciones Import, instrucciones Inherits, declaraciones de variables, declaraciones de eventos, declaraciones de delegados e instrucciones Declare DLL

Guías de estructura de bloque

Active estas casillas de verificación para mostrar líneas punteadas verticales las llaves ( {} ) en el código. De este modo, puede ver con facilidad los bloques individuales de código para las construcciones de nivel de declaración y de nivel de código.

Comentarios

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

    Cuando se selecciona, inserta los elementos XML de los comentarios de documentación XML después de escribir la introducción de comentario ///. Para 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 colocar "out" o "ref" en estructura personalizada

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

    Ejemplo

    Se supone que los siguientes class y struct existen 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 "No colocar referencia ni salida en la estructura personalizada" está desactivada, la característica "Extraer método" 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 referencia ni salida 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

    Al seleccionarlo, se insertan sugerencias de nombre de parámetro para literales, literales convertidos e instancias de objeto antes de cada argumento en las llamadas de función.

    Inline Parameter Name Hints for CSharp

  • Sugerencias de tipos alineados

    Cuando se seleccionan, se insertan sugerencias de tipos para variables con tipos inferidos y tipos de parámetro lambda.

    Inline Type Hints for CSharp

Margen de herencia

  • Al seleccionarlo, se agregan iconos a los márgenes que representan las implementaciones e invalidaciones del código. Al hacer clic en el icono del margen de herencia se mostrarán las opciones de herencia que puede seleccionar para navegar a ellas.

    Inheritance Margin

Consulte también