Guía de productividad de Visual Studio para desarrolladores de C#

Descubra cómo Visual Studio aumenta la productividad de los desarrolladores de .NET que usan C# a un nivel nunca visto. Aproveche las mejoras de productividad y rendimiento, como la navegación a ensamblados descompilados, las sugerencias de nombres de variable mientras escribe, una vista jerárquica en el Explorador de pruebas, Ir a todo (CTRL+T) para dirigirse a las declaraciones de archivo/tipo/miembro/símbolo, un asistente de excepciones inteligente, la configuración y la aplicación de estilo de código, así como numerosas correcciones de código y refactorizaciones.

Para obtener una productividad general para .NET, C++y otros lenguajes, vea Guía de productividad para Visual Studio. Para obtener información sobre métodos abreviados de teclado útiles, vea Métodos abreviados de productividad. Para obtener una lista completa de accesos directos de comandos, consulte Accesos directos de teclado predeterminados.

Uso de los métodos abreviados de teclado de otro editor

Si ya conoce otro IDE o entorno de programación, puede cambiar las combinaciones de teclado a Visual Studio Code o ReSharper (Visual Studio):

Screenshot of the keyboard schemes in Visual Studio 2022.

Keyboard Schemes in Visual Studio

Algunas extensiones también ofrecen combinaciones de teclado:

Estos son accesos directos populares de Visual Studio:

Métodos abreviados (todos los perfiles) Get-Help Description
Ctrl+T Ir a todo Navegar a cualquier declaración de archivo, tipo, miembro o símbolo
F12 (también CTRL+clic) Ir a definición Navegar hasta donde se define un símbolo
CTRL+F12 Ir a implementación Navegar desde cualquier tipo base o miembro a sus distintas implementaciones
MAYÚS+F12 Buscar todas las referencias Ver todas las referencias de símbolos o literales
Alt+Inicio Ir a base Navegar hacia arriba por la cadena de herencia
Ctrl+. (también Alt+Entrar en el perfil de C#) Acciones rápidas y refactorizaciones Ver qué correcciones de código, acciones de generación de código, refactorizaciones u otras acciones rápidas están disponibles en la posición del cursor o selección de código
Ctrl+D Línea duplicada Duplica la línea de código en la que está el cursor.
Mayús+Alt++/- Expandir o contraer la selección Expande o contrae la selección actual en el editor.
Mayús + Alt + . Inserción del siguiente símbolo de inserción coincidente Agrega una selección y un símbolo de inserción en la siguiente ubicación que coincide con la selección actual.
Ctrl+Q Search Buscar todos los valores de Visual Studio
F5 Iniciar depuración Iniciar la depuración de la aplicación
CTRL+F5 Ejecutar sin depurar Ejecutar la aplicación localmente sin depuración
CTRL+K,D (perfil predeterminado) o CTRL+E,D (perfil de C#) Dar formato al documento Limpiar el formato de las infracciones en el archivo según la configuración de nueva línea, espaciado y sangría
Ctrl+\ ,Ctrl+E (perfil predeterminado) o Ctrl+W,E (perfil de C#) Ver lista de errores Ver todos los errores en el documento, proyecto o solución
Alt + RePág o AvPág Ir al problema siguiente o anterior Salta al error, advertencia o sugerencia anterior o siguiente del documento.
Ctrl+K, / Alternar poner/quitar marca de comentario de una única línea Este comando agrega o quita una única línea de comentario en función de si la selección ya tiene marcas de comentarios.
Ctrl+Mayús+/ Alternar poner/quitar marca de comentario de bloque Este comando agrega o quita comentarios de bloque en función de lo que se haya seleccionado.

Nota

Algunas extensiones desenlazan los enlaces de teclado de Visual Studio predeterminados. Puede restaurar los enlaces de teclado a los valores predeterminados desde Herramientas>Importar y exportar configuración>Restablecer todas las configuraciones o Herramientas>Opciones>Teclado>Restablecer.

Para más información sobre los métodos abreviados de teclado y los comandos, consulte Métodos abreviados de productividad. O bien, consulte Métodos abreviados de teclado de Visual Studio para obtener una lista completa y una hoja de características clave descargable.

Visual Studio tiene una característica denominada Go to All (Ir a todo) que le permite saltar rápidamente a cualquier declaración de archivo, tipo, miembro o símbolo. Para abrirla desde la barra de menús, seleccione Editar>Ir a>Go to All (Ir a todo). O bien, puede abrirla mediante el método abreviado de teclado Ctrl+T.

Aparecerá una pequeña ventana en la parte superior derecha del editor de código.

Screenshot of the Go To All window in Visual Studio.

Screenshot of the Go To All window.

Puede usar esta característica para realizar las siguientes acciones:

  • Cambie la ubicación de esta barra de búsqueda o desactive la vista previa en vivo de la navegación en el icono de engranaje.
  • Filtre los resultados mediante una sintaxis como t mytype.
  • Puede definir el ámbito de la búsqueda solo al documento actual.
  • Se admite el uso de camel Case.

Para obtener más información sobre Go to All (Ir a todo), vea Búsqueda de código mediante comandos Ir a.

Aplicación de reglas de estilo de código

Puede usar un archivo Editorconfig para codificar las convenciones de codificación y que viajen con el origen.

Code style enforcement in Visual Studio

  • Agregue un archivo EditorConfig de estilo .NET o predeterminado al proyecto mediante Agregar>Nuevo elemento en el menú contextual desplegable Agregar en el Explorador de soluciones. Después, en el cuadro de diálogo Agregar nuevo elemento, busque "editorconfig". Seleccione cualquiera de las plantillas de elemento Archivo editorconfig y, luego, elija Agregar.

Screenshot of the EditorConfig file templates for C# in Visual Studio.

Screenshot of the EditorConfig item templates in Visual Studio.

  • Cree automáticamente un archivo .editorconfig a partir de la configuración del estilo de código en Herramientas>Opciones>Editor de texto>C#>Estilo de código.

Screenshot that shows how to generate an .editorconfig file from settings in Visual Studio.

Screenshot that shows how to generate an .editorconfig file from Visual Studio settings.

  • La característica de inferencia de código de IntelliCode para Visual Studio infiere los estilos de código del código existente. A continuación, crea un archivo EditorConfig no vacío con sus preferencias de estilo de código ya definidas.

  • Configure el nivel de gravedad de una regla de estilo de código directamente a través del editor. Si no tiene un archivo .editorconfig, Visual Studio genera uno. Coloque el cursor en el error, advertencia o sugerencia y escriba Ctrl+. para abrir el menú Acciones rápidas y refactorizaciones. Seleccione Configurar o suprimir incidencias. Después, seleccione la regla y elija el nivel de gravedad que desea configurar para esa regla. Esta acción actualizará la instancia existente de EditorConfig con la nueva gravedad de la regla.

Screenshot of how to configure the severity of a code style rule from within the editor.

Configure the severity level of a code style rule directly in the editor

Consulte la documentación sobre las opciones de las reglas de estilo de código de .NET, que también contiene un ejemplo de un archivo EditorConfig completo.

Limpieza de código

Visual Studio proporciona el formato a petición del archivo de código, como las preferencias de estilo de código, mediante la característica Limpieza de código. Para ejecutar la limpieza de código, seleccione el icono de escoba en la parte inferior del editor o pulse Ctrl+K, Ctrl+E.

Screenshot of the Code Cleanup button and options.

Screenshot of Code Cleanup button.

También puede ejecutar la limpieza de código en todo el proyecto o la solución. Haga clic con el botón derecho en el nombre del proyecto o la solución en el Explorador de soluciones, seleccione Análisis y limpieza de código y, luego, seleccione Ejecutar limpieza de código.

Screenshot of how to run Analyze and Code Cleanup across an entire project or solution.

Screenshot of how to run Code Cleanup across an entire project or solution.

Además de aplicar al archivo formato de espacios, sangrías, guiones, etc., la limpieza de código también aplica estilos de código seleccionados. Sus preferencias para cada estilo de código se leen en el archivo EditorConfig, si dispone de uno para el proyecto, o desde la configuración de estilo de código en el cuadro de diálogo Opciones.

Refactorizaciones y correcciones de código

Visual Studio incluye un gran número de refactorizaciones, acciones de generación de código y correcciones de código. Un subrayado ondulado rojo representa un error, un subrayado ondulado verde representa una advertencia y tres puntos de color gris representan sugerencias de código. Para acceder a las correcciones de código, puede seleccionar el icono de bombilla o destornillador, o bien pulsar Ctrl+. o Alt+Entrar. Cada corrección incluye una ventana de vista previa que muestra un diff de código activo con el funcionamiento de la solución.

Las correcciones rápidas y las refactorizaciones populares incluyen:

  • Cambiar nombre
  • Extraer método
  • Cambiar signatura del método
  • Generar constructor
  • Generar método
  • Mover tipo a archivo
  • Agregar comprobación de valores Null
  • Agregar parámetro
  • Quitar directivas using innecesarias
  • Bucle foreach para una consulta LINQ o un método LINQ
  • Extracción de miembros

Para más información, consulte las características de generación de código.

Puede instalar analizadores de .NET para marcar los problemas de código. O bien puede escribir su propia refactorización o corrección de código con analizadores de Roslyn.

Varios miembros de la comunidad han escrito extensiones gratuitas que agregan más inspecciones de código:

Características Encontrar usos, Ir a implementación y Navegar a ensamblados descompilados

Visual Studio tiene muchas características para ayudarle a buscar código base y navegar por él.

Característica Acceso directo Detalles y mejoras
Buscar todas las referencias MAYÚS+F12 Los resultados aparece en color y se pueden agrupar por proyecto, definición y tipo de referencia como lectura o escritura. También puede "bloquear" resultados.
Ir a implementación CTRL+F12 Puede usar Ir a definición en la palabra clave override para navegar al miembro reemplazado.
Ir a definición F12 o CTRL+Clic Presione Ctrl mientras hace clic para navegar a la definición.
Definición de Peek Alt+F12 Vista en línea de una definición.
Visualizador de estructura Líneas discontinuas grises entre llaves Mantenga el puntero del mouse para ver la estructura del código.
Navegación a los ensamblados descompilados F12 o CTRL+Clic Navegue a un origen externo (descompilado con ILSpy) habilitando la característica: Herramientas>Opciones>Editor de texto>C#>Opciones avanzadas>Habilitar la navegación a orígenes descompilados.

Go To All and Find All References

IntelliSense mejorado

Use IntelliCode para Visual Studio para obtener finalizaciones de código en contexto en lugar de solo una lista alfabética.

Pruebas unitarias

Hemos realizado numerosas mejoras en la experiencia de prueba. Puede realizar pruebas con los marcos de prueba MSTest (MSTest v1 o MSTest v2), NUnit o XUnit.

  • La detección de pruebas del Explorador de pruebas es rápida.

  • Organice las pruebas en el Explorador de pruebas con ordenación jerárquica.

Hierarchy view for Text Explorer in Visual Studio

  • Live Unit Testing ejecuta de manera continua pruebas afectadas por el cambio en el código y actualiza los iconos del editor insertado para que el desarrollador conozca el estado de las pruebas. Incluya o excluya pruebas específicas o proyectos de prueba desde su conjunto de pruebas en directo. (Solo la edición Visual Studio Enterprise).

Para obtener más información, consulte Conceptos básicos de las pruebas unitarias.

Depuración

Visual Studio incluye las siguientes funcionalidades de depuración:

  • La capacidad de buscar una cadena dentro de las ventanas Watch (Inspeccionar), Autos (Autos) y Locals (Variables locales).
  • Ejecutar hasta hacer clic, que permite mantener el puntero junto a una línea de código, hacer clic en el icono verde "reproducir" que aparece y ejecutar el programa hasta que llegue a esa línea.
  • El Asistente de excepciones, que pone la información más importante en el nivel superior del cuadro de diálogo, por ejemplo, qué variable es null en NullReferenceException.
  • La depuración Retroceder, que permite volver a puntos de interrupción anteriores y ver el estado de la aplicación tal y como estaba en un momento anterior.
  • Depuración de instantáneas, que permite investigar el estado de una aplicación web en directo en el momento en que se inició una excepción (debe estar en Azure).

Screenshot of the Exception Helper next to a line of code.

Exception Helper in Visual Studio

Control de versiones

En Visual Studio 2022, puede usar Git directamente desde el IDE para crear, revisar, modificar y ejecutar solicitudes de incorporación de cambios. Para obtener más información, consulte Cómo Visual Studio facilita el control de versiones con Git.

Puede usar Git o TFVC para almacenar y actualizar el código en Visual Studio.

  • En la Visual Studio 2019, versión 16.8 y posteriores, puede usar Git directamente desde el IDE para crear, revisar, modificar y ejecutar solicitudes de incorporación de cambios.

  • En Visual Studio 2019, versión 16.7 y anteriores, instale la extensión Pull requests for Visual Studio para crear, revisar, modificar y ejecutar solicitudes de incorporación de cambios sin salir de Visual Studio.

¿Qué otras características tengo que conocer?

La lista siguiente incluye características de editor y productividad que aumentan la eficacia a la hora de escribir código. Puede que sea necesario habilitar algunas de las características porque están desactivadas de forma predeterminada.

Característica Detalles Cómo habilitar
Buscar archivo en el Explorador de soluciones Resalta el archivo activo en el Explorador de soluciones Herramientas>Opciones>Proyectos y soluciones>Realizar seguimiento del elemento activo en el Explorador de soluciones
Agregar usos para tipos de ensamblados de referencia y paquetes NuGet Muestra una bombilla de error con una corrección de código para instalar un paquete NuGet para un tipo sin referencia Herramientas>Opciones>Editor de texto>C#>Opciones avanzadas>Sugerir usos para tipos de ensamblados de referencia y Sugerir usos para tipos de paquetes NuGet
Habilitar análisis de la solución completa Ver todos los errores de la solución en la Lista de errores Herramientas>Opciones>Editor de texto>C#>Opciones avanzadas>Habilitar análisis de la solución completa
Habilitar la navegación a orígenes descompilados Permite Ir a definición en tipos y miembros de orígenes externos y usar el descompilador ILSpy para mostrar los cuerpos de método Herramientas>Opciones>Editor de texto>C#>Opciones avanzadas>Habilitar la navegación a orígenes descompilados
Modo de finalización y sugerencias Cambia el comportamiento de finalización de IntelliSense. Los desarrolladores con conocimientos de IntelliJ tienden a usar aquí una configuración no predeterminada. Editar>IntelliSense>Alternar el modo de finalización (o pulse Ctrl+Alt+Barra espaciadora en el editor)
CodeLens Muestra la información de referencia de código y el historial de cambios en el editor. (Los indicadores de CodeLens del control de código fuente no están disponibles en la edición Visual Studio Community). Herramientas>Opciones>Editor de texto>Todos los lenguajes>CodeLens
Fragmentos de código Ayudan al código auxiliar fuera del texto reutilizable común Escriba un nombre de fragmento de código y presione Tabulación dos veces.
Pegar JSON o XML como clases Copie cualquier fragmento de texto JSON o XML en el Portapapeles y péguelo como clases .NET fuertemente tipadas en cualquier archivo de código de C#. Editar>Pegado especial>Pegar JSON como clases (o Pegar XML como clases)
Copia y recorte de sangría Copie el código de Visual Studio en otro programa (Outlook, Teams, etc.), sin tener que corregir manualmente la sangría después de pegar el código. Disponible en Visual Studio 2022 versión 17.7 y posteriores.