El punto de interrupción no se alcanzará actualmente. No se han cargado símbolos para este documento en una aplicación de Silverlight

331

Ok, lo que tengo:

Visual Studio 2010 RC, W7 x64, inició un nuevo tipo de proyecto de aplicación Silverlight. Hospedar la aplicación Silverlight en un proyecto de aplicación web ASP.NET. Silverlight versión 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 recibí el 'El punto de ruptura no se alcanzará actualmente. No se han cargado símbolos para este documento. mensaje que aparece en el IDE, pero solo afecta a la aplicación web, puedo depurar Silverlight y la aplicación Winform.

Lo que intenté / hice para deshacerme del mensaje:

  • Restablecer configuración de Visual Studio
  • eliminó todos los archivos en cada carpeta de archivos temporales de ASP.NET (hay uno para cada 32 bits / 64 bits y para Framework 2.0 y 4.0)
  • intenté depurar usando el servidor web integrado de Visual Studio; normalmente uso IIS, en la salida del proyecto de la solución eliminé todas las carpetas obj y bin en cada carpeta de proyecto
  • creó una nueva solución y agregó todos los proyectos a esta nueva solución
  • eliminó el archivo suo de solución
  • creó una nueva aplicación web ASP.NET para probar si se trata de un problema de instalación VS => Puedo depurar este nuevo proyecto / solución
  • reinició la máquina varias veces
  • reparó la instalación de vs.net
  • hizo un IISReset
  • eliminó 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
  • rastreó Microsoft Connect 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 temporal de archivos ASP.NET, pero esta vez necesito tu ayuda.

Christian Muggli
fuente
Este es un duplicado, mire [Esta página] [1], para obtener una respuesta a su pregunta [1]: stackoverflow.com/questions/2155930/…
SuperKael
@CalebJares jaja me encontré con este problema hoy. Resulta que estaba compilando / ejecutando en modo de lanzamiento en lugar de depurar.
theB3RV
En mi caso, desactivar el código de optimización en la pestaña Construir de las propiedades del proyecto solucionó el problema.
Arash Motamedi

Respuestas:

176

Haga clic derecho en la solución -> Propiedades

Busque en Propiedades comunes -> Proyecto de inicio

Seleccionar múltiples proyectos de inicio

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

Hans K
fuente
Esto funcionó pero tuve que hacerlo varias veces (VS 2010, servidor web incorporado, sitio web)
MGOwen
17
Tengo varios proyectos y los inicio como dices ... algunos de ellos son proyectos de biblioteca de clases ... aparece un mensaje emergente de error siguiente: "Un proyecto con una biblioteca de tipo de salida de clase no se puede iniciar directamente"
Muhammad Azeem
3
Estoy teniendo exactamente el mismo problema que Muhammed comentó. El proyecto para el que VS no carga símbolos es un proyecto de biblioteca. Curiosamente, ¡otra solución que se vincula al mismo proyecto de biblioteca no tiene problemas para depurar esa misma biblioteca!
Vivian River
1
No creo que esta sea una respuesta a la pregunta. Simplemente establece que varios proyectos se inicien al mismo tiempo, en lugar de solo uno, lo cual es típico. Si el proyecto es una clase Lib (dll), mostrará un mensaje de error que dice que no se puede iniciar. Si un proyecto es o no un proyecto de inicio o no, no tiene relación con la depuración.
Greg Gum
En mi caso, había reconfigurado el sitio IIS que ejecutaba mi proyecto para apuntar a una carpeta diferente. De alguna manera, esto había borrado la configuración de la solución indicada anteriormente ...? Puede haber sido un error de control de fuente, pero no pude encontrar un cambio en el .sln. De todos modos, restablecer esto como se describe resolvió el problema; espero que la información ayude a alguien.
brichins
79

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 Silverlight esté activado en el proyecto .Web. Abra las propiedades del proyecto y seleccione el depurador 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í . Luego, alguien mencionó un hilo para intentar usar IE como navegador en su lugar. ¡Esto hizo que la depuración y los puntos de interrupción volvieran a funcionar!

Editar:

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

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

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

anjdreas
fuente
¡Gracias, esto simplemente funcionó para mí! El único problema es: no puedo establecer qué navegador ejecutar en ningún archivo de configuración (¿puedo?), Así que ahora estoy atascado como IE como mi navegador predeterminado. Bah.
DanTheMan
1
Para evitar tener IE como mi navegador predeterminado, cambié la configuración de inicio en el proyecto .Web para ejecutar IE con la ruta como parámetros de línea de comandos.
angularsen
Usted es maravilloso. He estado luchando con este problema durante los últimos días. Incluso reinstalé Visual Studio. Mi navegador predeterminado era Firefox, probé Chrome. Simplemente no me vino a la mente probar IE, qué pérdida de tiempo. Gracias por la info.
GaneshT
Mi comentario anterior sobre la configuración de inicio no debe seguirse al solucionar el problema como se explica en mi respuesta editada. Simplemente use la "opción de página específica" predeterminada, o creo que puede adjuntarse al proceso incorrecto.
angularsen
66
He marcado la casilla de verificación "Silverlight" en la pestaña "Web" en la configuración del proyecto .Web. Ahora es trabajo. ¡Gracias!
Eugene Maksimov
54

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

Es decir, el servidor de aplicaciones ejecuta 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, realizo mi depuración con IIS como el host de la aplicación en lugar del pequeño artilugio independiente que la mayoría de la gente usa. ¡Esto podría influir en la utilidad de mi respuesta!

Actualización :

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

Para Visual Studio, el directorio de depuración (es decir, C:\dev\MyOtherApplicationarriba) es el directorio en el que svcse encuentran sus archivos, generalmente el mismo directorio que el csprojarchivo de su proyecto.

Bevan
fuente
2
Tal vez, pero la respuesta de Hans K funcionó para mí. Supongo que hay múltiples respuestas dependiendo de la situación.
Bob Wintemberg
Bien, pero ¿cómo sé si esto está sucediendo? ¿Cómo lo soluciono?
MGOwen
@ MGOwen: en su configuración de IIS, verifique la ubicación física de la carpeta virtual que contiene sus servicios y asegúrese de que coincida con el directorio de salida de VStudio.
Bevan el
Sí, también estaba trabajando con IIS, pero después de que VS fallara, mi archivo de solución se corrompió, así que tuve que sacarlo de la subversión nuevamente. Por supuesto, olvidé que al hacer esto, volví a usar el servidor VS webdev. Duh! ¡Gracias!
Fedor Steeman
3
Cuando VS se confunda, asegúrese de volver al perfil de depuración. Eso me atrapó.
Christopher Stevenson
46

El problema para mí resultó ser que la casilla de verificación Propiedades-> Compilar-> Optimizar código se había activado en la configuración de Depuración. Lo apagué, reconstruí y la depuración funcionó normalmente.

Samuel Jack
fuente
2
trabajó para mi. Realmente no sé por qué, por lo general, tener activado el "código de optimización" simplemente no le permitirá interrumpir {y}.
viggity
¡Trabajó para mí también! ¡Gracias!
bisand
1
Proyecto listo para lanzar build. Siempre hay algo que no está ahí.
Ian Warburton
¡Eso lo hizo por mí! +1
Imdad
22

La razón por la que te enfrentaste es que los PDB ("PDB significa Program Database, un formato de archivo propietario (desarrollado por Microsoft) para almacenar información de depuración sobre 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) compilarla.

Limpiar o reconstruir la solución me resuelve estos problemas.

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

Sameh Deabes
fuente
gracias por el aviso ... por supuesto que limpié / reconstruí la solución, pero eso no ayudó. Punto 1: ¿cómo puedo depurar otra aplicación si la probé en otro sistema? lo mismo para el Punto 2. por cierto, es RC y bastante estable en absoluto ... gracias de todos modos.
Christian Casutt
¡No entendí bien tu frase "lo probé en otro sistema"! Release Candidate no significa que esté libre de errores, y no perderá nada si lo prueba. Si está utilizando IE8, algunas personas dijeron que podría ser la raíz del problema, consulte esto: weblogs.asp.net/abdullaabdelhaq/archive/2009/06/01/…
Sameh Deabes
También encontré esto: stackoverflow.com/questions/389290/… la gente sugirió soluciones muy rápidas allí. Eche un vistazo al comentario del punto de interrupción en línea allí.
Sameh Deabes
OK veo. mi frase 'lo probé en otro sistema' => copié la solución en un dispositivo USB, eliminé todas las carpetas bin / obj, abrí la solución en VS.NET e intenté depurarla. resultado: el mismo comportamiento => los puntos de interrupción no son alcanzados ... gracias por el otro enlace, lo leeré ahora mismo.
Christian Casutt
Clean + Rebuild no siempre actualiza los archivos .pdb. Lo que hice: fui a la carpeta / Bin de mi aplicación web y eliminé manualmente todos los archivos .pdb, luego los reconstruí. Trabajado como un encanto.
Dmitriy
21

Tuve el mismo problema, estaba depurando mi proyecto y tuve que hacer clic derecho en el proyecto y seleccionar "nueva instancia de depuración". Solo necesitaba hacer esto una vez, luego de eso funcionó normalmente.

campo
fuente
Muy extraño. Tuve el mismo problema y lo busqué en Google durante 2 horas. Por alguna razón, el Módulo no se cargaba cuando depuraba (Depuración -> Windows -> Módulo). Acabo de probar estas opciones y la depuración del boom comenzó a funcionar. Estaba usando Vs2019
Rennish Joseph
18

Este error surge de vez en cuando para mí y siempre puedo rastrearlo hasta la configuración del proyecto para el ensamblaje en cuestión. No tiene que "esperar" hasta que su código no respete un punto de interrupción o hasta que establezca el punto de interrupción, para saber qué conjuntos tienen símbolos cargados.

Cuando ejecute un proyecto en modo de depuración, en la ventana Salida aparecerá una lista de los ensambles que tienen símbolos cargados como se muestra a continuación (es posible que deba abrir la imagen en una nueva pestaña): T

Ventana de salida

Entonces, en este caso, BASD.Core.Data.dll NO tiene símbolos cargados. Entonces, puede comparar la configuración del proyecto para este ensamblaje con la de otro ensamblado que logró cargar símbolos, a fin de averiguar por qué algunos cargan y otros no cargan símbolos.

"Para mí", sin embargo, "cada" vez que esto sucede es porque no se está creando la información de depuración. Entonces abro Propiedades del proyecto> Construir> Avanzado en un proyecto (C #).

Entonces, para Basd.Core.Data.dll anterior, es decir, sin símbolos, la configuración de compilación avanzada fue:

pdboff

Mientras que para Basd.Core.Configuration.dll, es decir, un ensamblaje donde podía establecer y alcanzar un punto de interrupción, la configuración era:

pdbon

Así que estoy generando información de depuración en el último proyecto y no en el primero, de ahí mi capacidad para alcanzar el punto de interrupción en Basd.Core.Configuration.dll

También tenga en cuenta que no es suficiente simplemente tener un archivo .pdb en la carpeta bin de un proyecto para un .dll dado porque podría estar desactualizado y, por lo tanto, Visual Studio no lo recoge como un archivo de símbolo válido para el .dll estás tratando de pasar.

También tenga en cuenta que cambiar las configuraciones de compilación puede cambiar la configuración de información de compilación y de dónde se extraen los símbolos.

(Me doy cuenta de que en este caso estoy en modo Release pero el método aún se aplica)

velocidad
fuente
1
También puede verificar qué símbolos se cargaron a través de la ventana Módulos. Si va a Depurar> Windows> Módulos, enumera todos los módulos y su estado de símbolo. Para los que no están cargados, puede hacer clic derecho sobre ellos y hacer clic en "Cargar símbolos". Sin embargo, esto es más una solución a corto plazo, y solo funciona si aparecen en la lista para empezar.
EF0
14

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

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

Rafal
fuente
¡Estaba intentando adjuntar un depurador al perfil de lanzamiento y esto funcionó para mí!
imlokesh
1
¡Gracias! "pdb-only" (en lugar de completo) fue suficiente.
Greg Little
Dios te bendiga hijo mío.
Christopher D. Emerson el
13

Asegúrese de ejecutar su programa en modo DEPURACIÓN y no en modo LIBERACIÓN.

MrOli3000
fuente
gran respuesta. Gracias
Krishan Subudhi
10

Depurar -> Adjuntar al proceso ->
elija Depurar estos tipos de código: opción ->
seleccione Managed v3.5, v3.0, v2.0 o Managed v4.5, v4.0 ingrese la descripción de la imagen aquí

Andrei Karcheuski
fuente
Este es el problema que encontré. Tengo algunos proyectos en v4.5 y otros en v2.0 (sí, lo sé, lo sé ...). Aparentemente, esta configuración no está basada en proyectos, por lo que cuando la configuré en un proyecto v4.5, tuve que volver a configurarla cuando entré en un proyecto v2.0.
L_7337
9

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

El problema es más probable que su aplicación Silverlight no se implemente correctamente en su aplicación web durante 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 referenciado debe copiarse en la carpeta bin del proyecto de referencia para depurar. Para las bibliotecas de clases esto sucede cuando hace clic 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 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 xaparchivo se copiará a la aplicación web en la compilación o implementación. Eso significa que la aplicación actual de Silverlight y sus archivos de depuración están dentro de la aplicación que se está depurando, y podrá recorrer el código.

Kirk Broadhurst
fuente
9

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"   .../>
Adán
fuente
8

Tuve el mismo problema en Windows 7 y probé todo : limpié archivos DLL, investigué la lista de módulos, apagué "Just My Code", y así sucesivamente.

El problema se resolvió después de ejecutar Visual Studio "como administrador". Honestamente. ¿Por qué Microsoft no podía avisarme que está no correr "como administrador"? Me ahorraría algunas horas de trabajo.

Ector
fuente
8

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

Joshua Walsh
fuente
7

Tuve el mismo problema

Por alguna razón, una de las DLL estaba registrada en el GAC, por lo tanto, siempre tenía una versión diferente al código.

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

Stikut
fuente
¿Quieres decir cómo llegó a esa situación? ¿O cómo lo eliminé?
Stikut
¿Cómo lo quitaste? Tengo el mismo problema y no puedo solucionarlo. He intentado todo, así que esperaba que esta fuera mi solución.
Gaui
1
Espero que pueda usar este: support.microsoft.com/kb/873195 A menos que, por supuesto, tenga algún otro error
Stikut
6

Para aquellos lectores que usan Visual Studio 2008, no Visual Studio 2010 y reciben 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 IIS en Visual Studio 2008 al adjuntar al proceso w3wp.exe en lugar de utilizar el servidor de desarrollo ASP.NET para la depuración (comience con la depuración), este podría ser su problema:

Visual Studio aún puede estar haciendo referencia a un archivo de símbolos (archivo utilizado durante la depuración) de su archivo DLL de un proceso de IIS que no está actualizado. Y ese archivo de símbolos ha sido recreado por una recompilación de código fuente .NET, pero el proceso de IIS todavía hace referencia al antiguo archivo de símbolos.

Arreglar:

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

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

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

Haga cada viñeta en el siguiente enlace UNA A LA VEZ, pero repita mis pasos a continuación con cada una que intente.

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

1.) Detenga la depuración (presione el icono del cuadrado rojo) en Visual Studio
2.) Solución limpia
3.) Solución de compilación
4.) [INSERTE LA INSTRUCCIÓN DE BULLET AQUÍ]
5.) Herramientas> Adjuntar al proceso (o comience con la depuración)
6.) Inicie el programa al que se está adjuntando y ejecútelo de manera que su código se vea afectado

6 explicaron:

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

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

EDITAR:

Hoy me di cuenta de que si intentas depurar un proyecto que no está configurado como proyecto de inicio, lo mostrará. Cuando se adjunta a su proceso w3wp.exe, cree que se está depurando en el proyecto que se establece como proyecto de inicio. Para resolverlo, simplemente haga clic con el botón derecho en el proyecto de aplicación web y elija "Establecer como proyecto de inicio". Luego intente volver a adjuntarlo a su proceso.

MacGyver
fuente
Siéntase libre de votar la respuesta si fue útil. :-) Te mostraré lo que hace la votación positiva.
MacGyver
Voto a su respuesta ya que fue útil. Intenté otras formas, pero la tuya fue la que me sacó. Gracias +1.
Zaker
5

El escenario es este: un proyecto particular es su proyecto de inicio (por ejemplo, tiene el método Main). Ese proyecto hace referencia a otros proyectos en su solución. Los puntos de interrupción en los otros proyectos no están siendo alcanzados.

Solución rápida: cuando cree su solución, busque en la ruta de salida de compilación (generalmente bin \ Debug) para el proyecto de inicio. Mire los archivos DLL y PDB para los proyectos a los que hace referencia. Asegúrese de que su última fecha de modificación sea la fecha en que creó su solución por última vez. Si no lo están, cópielos de la ruta de salida de compilación para cada proyecto en su ruta de salida de compilación de proyectos iniciales. Por ejemplo:

El proyecto A tiene Main. Hace referencia al proyecto B. Sus puntos de interrupción no se alcanzan en el proyecto B. Copie el archivo DLL y PDB de la ruta de salida de compilación del proyecto B a la ruta de salida de compilación del proyecto A. Luego ejecuta tu solución. El punto de quiebre ahora será alcanzado.

Ahora necesita descubrir por qué el Proyecto A no está copiando sobre el archivo DLL y PDB del Proyecto B. Las respuestas aquí cubren la mayoría de los escenarios. Un escenario que no se toca es asegurarse de que sus proyectos y soluciones estén vinculados a TFS correctamente. Tenía algunos proyectos vinculados y otros no vinculados correctamente. Eso me causó el problema. Una vez que lo solucioné, el problema desapareció y ya no tuve que copiar sobre los archivos DLL y PDB.

Jeremy Ray Brown
fuente
Su párrafo 2 solucionó mi problema. Uno de los proyectos en la solución estaba en un directorio bin diferente al directorio bin del dll de inicio.
BobRodes
4

La solución 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. Lo agregó nuevamente a las referencias de servicio
  5. Limpiar la solución y reconstruirla.
OSCURO
fuente
4

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

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

Lo que me ayudó a encontrar esta solución fue mirar las ventanas de Módulos durante la depuración y vi que para mis archivos ASP.NET DLL cargados tenía: Binary no fue creado con información de depuración.

Patrick del equipo NDepend
fuente
3

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 salvamanteles
  4. Marque la casilla "Compilar" para cada proyecto que desee depurar

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

joehanna
fuente
Esto funcionó para mí, pero también tuve que cambiar todos mis proyectos de Release a Debug dentro de la columna Configuración.
JoshYates1980
2

Bien, aquí vamos:

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

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

Si vuelve a ocurrir 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 opciones y configuraciones 3: en "depuración" y debajo de "símbolos" busque el botón "caché de símbolos vacío" y haga clic en él.

2FD
fuente
2

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

luego adjunte a aspnet_wp.exe.

El depurador comenzará a funcionar

madhusudhan
fuente
2

Tuve que desinstalar manualmente todas las instancias de .dll del registro y todas las instancias de .dll de mi unidad local. Desinstalé / reinstalé mi aplicación y ahora estoy llegando a puntos de interrupción. Perdí medio día haciendo esto :(.

jason02
fuente
2

Intenté renombrar el .pdbarchivo en la obj\debugcarpeta e hice una solución limpia y reconstruí.
Creó un nuevo .pdbarchivo y pude alcanzar los puntos de interrupción correctamente.

Mithran
fuente
2

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 podría depurar.

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

PM> Paquete de actualización Newtonsoft.Json

DesarrolladorAlex
fuente
2

Para mi aplicación WPF, eliminé la carpeta de la aplicación, volví a "Obtener más reciente" del control de código fuente y la reconstruí. Todos los puntos de interrupción funcionan muy bien ahora.

Mi pila se desborda
fuente
1

Intente configurar Silverlight Application Project como un proyecto de inicio: haga clic derecho en proyecto -> 'Establecer como proyecto de inicio. Luego presione F5 y vea si puede atrapar puntos de interrupción ...

Intente eliminar los datos de navegación / temporales en su navegador cada vez que realice cambios en la aplicación Silverlight

ITmeze
fuente
1

Otra anécdota que podría ser útil.

Encontré este problema cuando uno de mis proyectos estaba usando referencias de archivo de una carpeta de salida de Release. Cuando los resultados de la compilación se colocaron en una carpeta de Bienes, estos dlls de lanzamiento sobrescribían los dlls de depuración.

La solución fue asegurarme en el archivo csproj, HintPath de mi referencia era

<HintPath>..\..\Core\Goods\$(Configuration)\MyFramework.dll</HintPath>

y no

<HintPath>..\..\Core\Goods\Release\MyFramework.dll</HintPath>

BeauJest
fuente
1

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

Todavía no estoy seguro de por qué, pero algunos de ellos fueron depurables, otros no, aunque en la configuración de Referencias para los ensamblajes se especificaron las rutas completas correctas.

Este comportamiento impredecible casi me volvió loco :)

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

Jeroen Wiert Pluimers
fuente
1

Tuve un problema similar, excepto que mi problema era tonto: tenía 2 instancias del servidor web incorporado ejecutándose en 2 puertos diferentes Y tenía mi proyecto -> propiedades -> web -> "URL de inicio" apuntando a un puerto fijo pero la aplicación web no se estaba ejecutando realmente en 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 en el puerto 50803.

Cambié el servidor web incorporado para que se ejecutara 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

Chris Smith
fuente