c# - visual - El punto de interrupción no será alcanzado actualmente. No se han cargado símbolos para este documento en una aplicación de Silverlight




punto de interrupcion visual studio 2017 (20)

Abra la URL de la aplicación web desde el navegador y luego en el IDE de VS.Net use Herramientas -> Adjuntar para procesar

luego adjuntar a aspnet_wp.exe.

El depurador comenzará a trabajar

Ok lo que tengo

Visual Studio 2010 RC, W7 x64, inició un nuevo tipo de proyecto de aplicación Silverlight. Alojar la aplicación Silverlight en un proyecto de aplicación web ASP.NET. Versión Silverlight 3.0. Se agregó una clase LinqToSQL, un servicio WCF, una aplicación Winform Tester (proyecto en la solución) y algunas clases (también como proyectos en la solución).

Ayer, de repente obtuve el 'El punto de interrupción no será alcanzado actualmente. No se han cargado símbolos para este documento. Mensaje para que aparezca en el IDE, pero solo afecta a la aplicación web, puedo depurar la aplicación Silverlight y la aplicación Winform.

Lo que intenté / hice para deshacerme del mensaje:

  • Restablecer la configuración de Visual Studio
  • eliminó todos los archivos en cada \ Carpeta de archivos temporales de ASP.NET (hay uno para cada 32bit / 64bit y para Framework 2.0 y 4.0)
  • Intenté depurar utilizando el servidor web integrado de Visual Studio: normalmente uso IIS, en el resultado del proyecto de la solución eliminé todas las carpetas de obj y bin en cada carpeta de proyecto
  • creó una nueva solución y agregó todos los proyectos a esta nueva solución
  • eliminado el archivo suo solución
  • creó una nueva aplicación web ASP.NET para probar si se trata de un problema de instalación de VS => Puedo depurar este nuevo proyecto / solución
  • reinició la máquina varias veces
  • reparado la instalación vs.net
  • hice un IISReset
  • eliminado la aplicación web de IIS
  • usó el botón Crear directorio virtual en Propiedades del proyecto de la aplicación web para crear una nueva aplicación web en IIS
  • Cambió la versión de marco de cada proyecto de 3.5 a 4.0.
  • Abrí la solución en mi segunda máquina => mismo comportamiento
  • Microsoft Connect rastreado por errores / problemas similares
  • PASADO 7 HORAS.

Entonces, esto sucede la segunda vez en mi vida. la última vez que lo resolví eliminando la carpeta de archivos temporales de ASP.NET, pero esta vez necesito su ayuda.


Acabo de resolver este problema de acuerdo con la implementación de aplicaciones de Silverlight . (Esta respuesta es un duplicado de algunos otros, pero intentaré explicarlo más a fondo).

El problema es más probable que su aplicación Silverlight no se esté implementando correctamente en su aplicación web en la compilación / inicio. Este es un problema de referencia: es fácil de entender pero no es obvio la primera vez que lo encuentra.

Al igual que cualquier otra referencia de proyecto, la salida del proyecto de referencia debe copiarse en la carpeta bin del proyecto de referencia para poder realizar la depuración. Para las bibliotecas de clases, esto sucede cuando hace clic con el botón derecho y selecciona 'Agregar referencia ...'. Para Silverlight, debe agregar una referencia a través de Propiedades del proyecto.

  • Haga clic derecho en su proyecto y seleccione 'Propiedades'
  • Seleccione la pestaña 'Aplicaciones de Silverlight' a la izquierda
  • Presione el botón 'Agregar ...' y seleccione su proyecto de Silverlight en el cuadro de diálogo

Esto agrega una referencia a la aplicación Silverlight desde su aplicación web de alojamiento y garantiza que el archivo xap se copiará en la aplicación web en la compilación o implementación. Eso significa que la aplicación Silverlight actual y sus archivos de depuración se encuentran dentro de la aplicación que se está depurando, y podrá pasar por el código.


Bien, aquí vamos

(En una "aplicación de Silverlight": primero verifique que Silverlight esté en "web" en las "propiedades" del proyecto de su servidor: si eso no lo resolvió, intente esto a continuación)

La primera vez que haga: ejecute esto primero: devenv.exe / ResetSettings y 1: En el menú superior, haga clic en la etiqueta de depuración 2: haga clic en las opciones y configuraciones 3: En "depuración" y en "general" busque "habilitar. 4: Marque la casilla. 5: Y ahora todos los símbolos serán descargados y reconfigurados :)

Si vuelve a suceder después de lo anterior, simplemente borre la carpeta donde están los símbolos:

1: en el menú superior, haga clic en la etiqueta de depuración 2: haga clic en las opciones y configuraciones 3: en "depuración" y en "símbolos", busque el botón "caché de símbolos vacío" y haga clic en él.


Cada vez que he tenido este error en particular, resulta que la carpeta desde la que Visual Studio está cargando ensamblajes es diferente de la carpeta desde la que se ejecuta la aplicación web.

Es decir, el servidor de aplicaciones está ejecutando la aplicación desde

C:\dev\MyApplication\bin 

pero Visual Studio está depurando desde

C:\dev\MyOtherApplication\bin (or something along those lines, anyway).

Nota: por varias razones, hago mi depuración con IIS como el host de la aplicación en lugar del gitmo independiente que usa la mayoría de la gente. ¡Esto podría influir en la utilidad de mi respuesta!

Actualización :

Para IIS, el directorio del servidor de aplicaciones (es decir, C:\dev\MyApplication anterior) es el directorio físico configurado para la aplicación web; esto se puede controlar cambiando la configuración básica de la aplicación.

Para Visual Studio, el directorio de depuración (es decir, C:\dev\MyOtherApplication anterior) es el directorio en el que se encuentran sus archivos svc , generalmente el mismo directorio que su archivo de proyecto csproj .


El motivo por el que se enfrentó es que los PDB ("PDB" significa "Base de datos del programa", un formato de archivo patentado (desarrollado por Microsoft) para almacenar información de depuración de un programa) no están actualizados, esto puede deberse a algunas razones. :

1- Como dijo Bevan, ¡puedes estar depurando otra aplicación!

2- Estás depurando otra versión de la misma aplicación. Por ejemplo, adjuntó una aplicación creada anteriormente con la versión actual del código para la depuración sin (re) construirla.

Limpiar o reconstruir la solución resuelve esos problemas para mí.

Para asegurarse de que el problema no sea suyo, intente depurar la misma aplicación con VS 2008 (me temo que puede haber un error en VS 2010, ¡todavía es beta!).


El problema para mí resultó ser que las casillas de verificación Propiedades-> Construir-> Optimizar código se habían activado en la configuración de depuración. Se apagó, se reconstruyó y la depuración funcionó normalmente.


Haga clic derecho en la solución -> Propiedades

Busque en Propiedades comunes -> Proyecto de inicio

Seleccione múltiples proyectos de inicio

Seleccione Iniciar acción en los proyectos que necesita depurar.


Intenté cambiar el nombre del archivo .pdb en la carpeta obj\debug e hice una solución limpia y la reconstruí.
Creó un nuevo archivo .pdb y pude alcanzar los puntos de interrupción correctamente.


Ir a Propiedades del proyecto -> Construir -> Avanzado ...

En la sección "Salida", seleccione "completo" en el menú desplegable Información de depuración


Las soluciones al mismo problema en mi caso fue la siguiente combinación de pasos:

  1. Solución -> Propiedades Seleccione varios proyectos de inicio seleccione Iniciar acción en los proyectos que necesita depurar.
  2. Se eliminó el servicio de Referencias de servicio y se limpió la solución.
  3. Reconstruir el proyecto de servicio
  4. Agregado de nuevo a las referencias de servicio
  5. Limpia la solución y reconstrúyela.

Para aquellos que leen Visual Studio 2008, no Visual Studio 2010 y están recibiendo este error. Las respuestas anteriores no me ayudaron en esta situación, así que estoy compartiendo mi experiencia.

Si está depurando una aplicación web de IIS en Visual Studio 2008 adjuntando al proceso w3wp.exe en lugar de usar el servidor de desarrollo ASP.NET para la depuración (comience con la depuración), este podría ser su problema:

Es posible que Visual Studio aún haga referencia a un archivo de símbolos (archivo utilizado durante la depuración) de su dll desde un proceso de IIS que está desactualizado. Y ese archivo de símbolos ha sido recreado por una compilación de código fuente de .NET pero el proceso de IIS todavía hace referencia al archivo de símbolos anterior.

Arreglar:

Simplemente detenga la depuración en Visual Studio, reinicie la aplicación web y vuelva a adjuntar al proceso. Luego, los puntos de interrupción deben cambiar de amarillo (cuando vea este error) a rojo nuevamente.

========================

Más cosas para probar (encontré una nueva situación hoy):

Haga cada una de las viñetas en el enlace de abajo UNA A LA VEZ, pero repita mis pasos a continuación con cada una que pruebe.

http://carnotaurus.philipcarney.com/post/4130422114/visual-studio-debugging-issue-with-files-of-the-same

1.) Detener la depuración (presione el icono del cuadrado rojo) en Visual Studio
2.) Solución limpia
3.) Construir Solución
4.) [INSERTAR LA INSTRUCCIÓN DEL BOLETÍN AQUÍ]
5.) Herramientas> Adjuntar al proceso (o comenzar con la depuración)
6.) Inicie el programa al que está adjuntando y ejecútelo de modo que su código sea afectado.

6 explicaron:

Si se adjunta a nunit.exe, abra NUnit y ejecute una prueba para que su punto de interrupción sea alcanzado

Si se adjunta a w3wp.exe (sitio de IIS), abra su sitio en el navegador y vaya a la página que llegará a su punto de interrupción

EDITAR:

Hoy noté que si intentas depurar un proyecto que no está configurado como el proyecto de inicio, se mostrará esto. Cuando se adjunta a su proceso w3wp.exe, cree que su depuración en el proyecto se establece como el proyecto de inicio. Para resolverlo, simplemente haga clic derecho en el proyecto de la aplicación web y seleccione "Establecer como proyecto de inicio". A continuación, intente volver a adjuntar a su proceso.


Para mí, el problema era que tenía "Optimización de código" habilitado en la pestaña Generar de la configuración de mi proyecto.


Para solucionar este problema en Web.config, solo tuve que agregar debug="true"

  <system.web>
    <compilation targetFramework="4.0" debug="true">

Lo que me ayudó a encontrar esta solución ha sido buscar en las ventanas de los Módulos mientras realizaba la depuración y vi que, para mi ASP.NET DLL cargado, tenía: Binary no fue creado con información de depuración.


Si está depurando un proyecto web, asegúrese de que el atributo debug = "true" se haya establecido en su archivo web.config:

<system.web>
    <compilation debug="true"   .../>

Tuve el mismo problema pero en VS2013 para una aplicación web. Para mí, la respuesta fue actualizar la configuración de compilación para la solución:

  1. Haga clic derecho en la Solución y elija Propiedades
  2. Seleccione la configuración de depuración
  3. Seleccione "Configuración" en "Propiedades de configuración" en el trivet
  4. Marque la casilla "Crear" para cada proyecto que quiera depurar

Una vez que hice esto, todos mis puntos de interrupción comenzaron a funcionar.


Tuve el mismo problema y, después de buscar en Google, encontré dos soluciones típicas para esto:

  1. Asegúrese de que el depurador de Silverlight esté activado en el proyecto .Web. Abra las propiedades del proyecto y seleccione el depurador de Silverlight en la pestaña "Web".

  2. Reinicie Visual Studio y elimine todas las carpetas bin y obj.

Pero ninguno de estos funcionó para mí . Entonces, alguien mencionó un hilo para probar a usar IE como navegador. ¡Esto hizo que la depuración y los puntos de interrupción funcionaran de nuevo!

Editar:

Más tarde he luchado con IE9 que no funciona, porque se adjunta al proceso incorrecto. En lugar de adjuntarme manualmente al proceso de IE correcto cada vez, encontré un buen trick :

  • Haga clic derecho en una de las páginas generadas en el proyecto .Web (.html o .aspx)
  • Haga clic en "Buscar con ..."
  • Establecer IE como navegador predeterminado (solo afectará la elección del navegador de Visual Studio)

Ahora, Visual Studio lanzará IE cuando ejecute el proyecto .Web y se adjuntará al proceso correcto. Deberias hacer eso.


Tuve el mismo problema: perdí mucho tiempo intentando que la depuración funcionara en Visual Studio.

Terminó siendo Nuget, tenía 3 versiones de Newtonsoft.Json (en 7 proyectos C #). La solución se compilaría pero no se podía depurar.

Solucioné el problema ejecutando lo siguiente en la Consola del Administrador de paquetes de Nuget:

PM> Update-Package Newtonsoft.Json


Tuve este mismo problema cuando en un cliente donde, para cada solución de aplicación, copiaron la mayoría de los ensamblados compartidos en una carpeta de " Referencias ", luego los agregaron a la solución como " elementos de la solución " y como un " Proyecto " dentro de la solución.

Aún no estoy seguro de por qué, pero algunos de ellos se podían depurar, otros no, aunque en la configuración de Referencias para los ensamblajes se especificaron las rutas completas correctas.

Este comportamiento impredecible alomst me volvió loco :)

Resolví esto eliminando todos los ensamblajes de la carpeta " Referencias " para las que había proyectos con código fuente, y manteniendo un buen seguimiento de la información de la versión de los ensamblajes compartidos.


Tuve un problema similar, excepto que mi problema era tonto: tenía 2 instancias del servidor web incorporado ejecutando bajo 2 puertos diferentes Y tenía mi proyecto -> propiedades -> web -> "Iniciar URL" que apunta a un puerto fijo pero la aplicación web no se estaba ejecutando realmente bajo ese puerto. Así que mi navegador estaba siendo redirigido a la "URL de inicio" que se refería a 1539 pero la instancia de código / depuración se estaba ejecutando bajo el puerto 50803.

Cambié el servidor web incorporado para que se ejecute bajo un puerto fijo y ajusté mi "URL de inicio" para usar ese puerto también. proyecto -> propiedades -> web -> sección "Servidores" -> "Usar Visual Studio Development Server" -> puerto específico


Tuvo el mismo problema

Por alguna razón, una de las DLL se registró en el GAC, por lo que siempre tuvo una versión diferente a la del código.

Una vez que lo quité del GAC, el problema se resolvió





iis