Inspección de una excepción mediante el asistente de excepciones
Artículo
Tratar con excepciones es un problema común, independientemente de su tecnología o nivel de experiencia. Puede ser una experiencia frustrante averiguar por qué las excepciones causan problemas en el código. Al depurar una excepción en Visual Studio, queremos reducir esa frustración al proporcionarle información de excepción pertinente para ayudarle a depurar el problema con mayor rapidez.
Pausa en la excepción
Cuando el depurador se interrumpe en una excepción, aparece un icono de error de excepción a la derecha de esa línea de código. Un asistente de excepciones no modal aparecerá cerca del icono de excepción.
Inspeccionar información de excepción
Puede leer de forma instantánea el tipo de excepción y el mensaje de excepción en la Aplicación auxiliar de excepciones, y si la excepción se inició o no se controló. Puede inspeccionar y ver las propiedades del objeto Exception haciendo clic en el vínculo Ver detalles.
Análisis de referencias nulas
A partir de Visual Studio 2017, para el código de .NET y C/C++, cuando se alcanza un NullReferenceException o un AccessViolation, se ve información de análisis nula en la Aplicación auxiliar de excepciones. El análisis se muestra como texto debajo del mensaje de excepción. En la ilustración siguiente, la información se muestra como "s era null".
Nota
El análisis de referencia null en código administrado requiere la versión 4.6.2 de .NET. Actualmente, no se admite el análisis null para la Plataforma universal de Windows (UWP) ni para ninguna otra aplicación de .NET Core. Solo está disponible durante la depuración de código que no tiene ninguna optimización de código Just-in-Time (JIT).
Configuración de las opciones de excepción
Puede configurar el depurador para que se interrumpa cuando se inicie una excepción del tipo actual desde la sección Configuración de excepciones de la Aplicación auxiliar de excepciones. Si el depurador está en pausa en una excepción iniciada, puede usar la casilla para deshabilitar la interrupción en ese tipo de excepción cuando se inicie en el futuro. Si no desea realizar la interrupción en esta excepción particular cuando se inicia en este módulo concreto, marque la casilla por el nombre del módulo en Excepto si se produce en: en la ventana Configuración de excepciones.
Inspección de excepciones internas
Si la excepción tiene excepciones internas (InnerException, puede verlos en el Asistente de excepciones. Si hay varias excepciones presentes, puede navegar entre ellas mediante las flechas izquierda y derecha que se muestran encima de la pila de llamadas.
de excepción interna
Inspección de excepciones reiniciadas
En los casos en los que el estado de una excepción es thrown, la Aplicación auxiliar de excepciones muestra la pila de llamadas desde la primera vez que se inició la excepción. Si la excepción se produjo varias veces, solo se muestra la pila de llamadas de la excepción original.
Inspección de excepciones asincrónicas (.NET)
A partir de .NET 9, el depurador de Visual Studio se interrumpe automáticamente cuando un método task asincrónico produce una excepción en el código de .NET Framework. Esto facilita la depuración de código asincrónico, especialmente en ASP.NET, ya que las excepciones a menudo se producen a través de límites asincrónicos.
Ver la pila de llamadas
A partir de la versión 17.3 de Visual Studio 2022, puede ver los marcos de pila de excepciones dentro de la ventana Pila de llamadas. Para las excepciones asincrónicas, esto agrega la capacidad de cargar rápidamente símbolos o localizar orígenes y ir directamente al sitio de la excepción. Los marcos de pila de excepciones dentro de la ventana Pila de llamadas proporcionan características estándar de pila de llamadas, como la navegación automática, el cambio rápido entre los marcos, la posibilidad de carga de símbolos y opciones de descompilación para volver al código fuente donde se produjo la excepción.
Obtención de ayuda para la inteligencia artificial
Si tiene Copilot, puede obtener asistencia de inteligencia artificial mientras depura excepciones. Solo tiene que buscar el botón Preguntar a Copilot. En estos escenarios, Copilot ya conoce el contexto de sus preguntas, por lo que no es necesario proporcionar contexto en el chat. Para obtener más información, consulte Depurar con Copilot.
Uso compartido de una sesión de depuración con Live Share
En el Asistente de Excepciones, podrá iniciar una sesión de Live Share mediante el vínculoIniciar sesión de Live Share.... Cualquier persona que se una a la sesión de Live Share podrá ver el Asistente de excepciones junto con cualquier otra información de depuración.
En este módulo se examina la validación de código mediante una combinación de pruebas, depuración y control de excepciones. Se revisan el proceso de depuración y las ventajas proporcionadas por el depurador de código, junto con las entidades de seguridad y los procesos detrás del control de excepciones.
Obtenga información sobre cómo especificar en qué excepciones se interrumpe el depurador, en qué punto quiere que se interrumpa y cómo se controlan las interrupciones.
Durante la depuración, podrá ver variables y expresiones en Inspección e Inspección rápida. Inspección puede mostrar varias variables; Inspección rápida solo puede mostrar una variable y únicamente mientras la depuración esté en pausa.
Utiliza la ventana 'Pila de llamadas' del entorno de desarrollo integrado (IDE) de Visual Studio para ver las llamadas a funciones o procedimientos que están actualmente en la pila.
Infórmese sobre los diferentes tipos de puntos de interrupción, una de las técnicas de depuración más importantes. En el artículo se tratan las acciones de los puntos de interrupción, los puntos de seguimiento, las condiciones y mucho más.
Obtenga información sobre lo que sucede cuando el depurador interrumpe la ejecución debido a una excepción no controlada. Es posible que pueda continuar la ejecución en el mismo subproceso.
Obtenga información sobre cómo usar el depurador de Visual Studio para solucionar problemas del código. Entre los temas, se incluye información sobre cómo activar el modo de interrupción, recorrer el código y realizar la ejecución hasta un destino.
Establezca puntos de seguimiento para registrar información en Salida sin modificar ni detener el código. Solo tiene que especificar una cadena de salida en la casilla Acción de la configuración del punto de interrupción.
Inspeccione las variables en las ventanas Automático y Variables locales durante la depuración en Visual Studio. Las ventanas Automático y Variables locales muestran valores de variables durante la depuración.