341 Stimmen

Der Haltepunkt wird derzeit nicht erreicht. Es wurden keine Symbole für dieses Dokument in einer Silverlight-Anwendung geladen

Ok, was ich habe:

Visual Studio 2010 RC, W7 x64, startete ein neues Projekt vom Typ Silverlight-Anwendung. Hosting der Silverlight-Anwendung in einem ASP.NET-Webanwendungsprojekt. Silverlight Version 3.0. Hinzufügen einer LinqToSQL-Klasse, eines WCF-Dienstes, einer Winform-Tester-Anwendung (Projekt in der Lösung) und einiger Klassen (ebenfalls als Projekte in der Lösung).

Gestern bekam ich plötzlich die Meldung "Der Haltepunkt wird derzeit nicht erreicht. No symbols have been loaded for this document.' Nachricht in der IDE erscheinen, aber es betrifft nur die Web Appliaction, ich kann die Silverlight und die Winform App debuggen.

Was ich versucht / getan habe, um die Meldung loszuwerden:

  • Visual Studio-Einstellungen zurücksetzen
  • entfernt alle Dateien in jedem \Temporary ASP.NET Files Folder (es gibt je einen für 32bit/64bit und für Framework 2.0 und 4.0)
  • versucht, mit Visual Studio Integrated Web Server zu debuggen - normalerweise verwende ich IIS, in der Projektausgabe der Lösung habe ich alle obj- und bin-Ordner in jedem Projektordner gelöscht
  • eine neue Lösung erstellt und alle Projekte zu dieser neuen Lösung hinzugefügt
  • die Datei solution suo gelöscht
  • eine neue ASP.NET-Webanwendung erstellt, um zu testen, ob es sich um ein VS-Installationsproblem handelt => ich kann dieses neue Projekt/diese Lösung debuggen
  • den Rechner mehrere Male neu gebootet
  • die vs.net-Installation repariert
  • einen IISReset durchgeführt
  • die Webanwendung aus dem IIS entfernt
  • Verwenden Sie die Schaltfläche Virtuelles Verzeichnis erstellen unter Projekteigenschaften der Webanwendung, um eine neue Webanwendung im IIS zu erstellen.
  • die Framework-Version jedes Projekts von 3.5 auf 4.0 geändert
  • Öffnete die Lösung auf meinem zweiten Rechner => gleiches Verhalten
  • Microsoft Connect nach Fehlern / ähnlichen Problemen durchsucht
  • 7 STUNDEN VERWENDET.

Also, dies geschieht das 2. Mal in meinem Leben. Letztes Mal habe ich es gelöst, indem ich den Ordner für temporäre ASP.NET-Dateien gelöscht habe, aber dieses Mal brauche ich Ihre Hilfe.

6voto

MacGyver Punkte 17368

Für die Leser, die Visual Studio 2008 und nicht Visual Studio 2010 verwenden und diesen Fehler erhalten. Die obigen Antworten haben mir in dieser Situation nicht geholfen, also teile ich meine Erfahrung.

Wenn Sie eine IIS-Webanwendung in Visual Studio 2008 debuggen, indem Sie sich an den Prozess w3wp.exe anhängen, anstatt den ASP.NET Development Server zum Debuggen zu verwenden (starten Sie mit debugging), könnte dies Ihr Problem sein:

Visual Studio referenziert möglicherweise immer noch eine Symboldatei (Datei, die während des Debuggens verwendet wird) von Ihrer DLL aus einem IIS-Prozess, die nicht mehr aktuell ist. Und diese Symboldatei wurde durch eine Neukompilierung des .NET-Quellcodes neu erstellt, aber der IIS-Prozess verweist immer noch auf die alte Symboldatei.

Zu beheben:

Beenden Sie einfach das Debugging in Visual Studio, starten Sie die Webanwendung neu, und verbinden Sie sich erneut mit dem Prozess. Dann sollten die Haltepunkte von gelb (wenn Sie diesen Fehler sehen) wieder auf rot wechseln.

\========================

Mehr Dinge zum Ausprobieren (habe heute eine neue Situation gefunden):

Führen Sie jeden Punkt in dem unten stehenden Link EINMAL aus, aber wiederholen Sie die unten stehenden Schritte mit jedem einzelnen Versuch.

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

1.) Beenden Sie das Debugging (drücken Sie das rote Quadrat-Symbol) in Visual Studio
2.) Saubere Lösung
3.) Lösung bauen
4.) [HIER AUFZÄHLUNGSANWEISUNG EINFÜGEN]
5.) Werkzeuge > An Prozess anhängen (oder mit Debugging beginnen)
6.) Starten Sie das Programm, an das Sie anhängen wollen, und führen Sie es so aus, dass Ihr Code getroffen wird

6 erklärt:

Wenn Sie an nunit.exe anhängen, öffnen Sie NUnit und führen Sie einen Test aus, damit Ihr Haltepunkt getroffen wird

Wenn Sie an w3wp.exe (IIS-Site) anknüpfen, öffnen Sie Ihre Site im Browser und gehen Sie zu der Seite, die Ihren Haltepunkt treffen wird

EDITAR:

Heute habe ich festgestellt, dass beim Debuggen eines Projekts, das nicht als Startprojekt festgelegt ist, Folgendes angezeigt wird. Wenn Sie Ihren w3wp.exe-Prozess anhängen, denkt er, dass er das Projekt debuggt, das als Startprojekt festgelegt ist. Um dies zu beheben, klicken Sie mit der rechten Maustaste auf das Webanwendungsprojekt und wählen Sie "Als Startprojekt festlegen". Versuchen Sie dann, sich erneut an Ihren Prozess anzuhängen.

5voto

Jeremy Ray Brown Punkte 1341

T

Q \Debug )

P

N

4voto

DIM Punkte 1

Die Lösung für das gleiche Problem war in meinem Fall die folgende Kombination von Schritten:

  1. Lösung --> Eigenschaften Wählen Sie mehrere Startprojekte aus und wählen Sie Aktion starten für die Projekte, die Sie debuggen möchten.
  2. Entfernen Sie den Dienst aus den Dienstverweisen und bereinigen Sie die Lösung.
  3. Wiederaufbau des Dienstleistungsprojekts
  4. Wieder zu den Servicereferenzen hinzugefügt
  5. Reinigen Sie die Lösung und stellen Sie sie wieder her.

3voto

joehanna Punkte 1431

Ich hatte das gleiche Problem, aber in VS2013 für eine Web-App. Für mich war die Antwort, um die Build-Konfiguration für die Lösung zu aktualisieren: -

  1. Klicken Sie mit der rechten Maustaste auf die Lösung und wählen Sie Eigenschaften
  2. Wählen Sie die Debug-Konfiguration
  3. Wählen Sie "Konfiguration" unter "Konfigurationseigenschaften" im Untersetzer
  4. Aktivieren Sie das Kontrollkästchen "Build" für jedes Projekt, das Sie debuggen möchten

Sobald ich dies getan hatte, funktionierten alle meine Haltepunkte.

2voto

DeveloperAlex Punkte 139

Ich hatte das gleiche Problem und habe viel Zeit verloren, als ich versuchte, das Debugging in Visual Studio zum Laufen zu bringen.

Am Ende war es Nuget - ich hatte 3 Versionen von Newtonsoft.Json (in 7 C#-Projekten). Die Lösung würde kompilieren, war aber nicht debuggbar.

Ich habe das Problem behoben, indem ich in der Konsole des Nuget-Paketmanagers Folgendes ausgeführt habe:

PM> Update-Paket Newtonsoft.Json

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X