it-swarm.com.de

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

Ok, was ich habe:

Visual Studio 2010 RC, W7 x64, hat einen neuen Projekttyp für Silverlight-Anwendungen gestartet. Hosten der Silverlight-Anwendung in einem ASP.NET-Webanwendungsprojekt. Silverlight Version 3.0. Es wurden eine LinqToSQL-Klasse, ein WCF-Dienst, eine Winform Tester-Anwendung (Projekt in der Lösung) und einige Klassen (auch als Projekte in der Lösung) hinzugefügt.

Gestern habe ich plötzlich das 'Der Haltepunkt wird momentan nicht erreicht. Für dieses Dokument wurden keine Symbole geladen. ' Meldung in der IDE angezeigt werden, aber es betrifft nur die Webanwendung, kann ich das Silverlight und die Winform App debuggen.

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

  • Setzen Sie die Visual Studio-Einstellungen zurück
  • alle Dateien in jedem\Temporary ASP.NET Files-Ordner entfernt (es gibt eine für jedes 32-Bit/64-Bit und für Framework 2.0 und 4.0)
  • ich habe versucht, mit dem integrierten Webserver von Visual Studio zu debuggen. Normalerweise verwende ich IIS. In der Projektausgabe der Lösung habe ich alle Ordner obj und bin in jedem Projektordner gelöscht
  • hat eine neue Lösung erstellt und alle Projekte zu dieser neuen Lösung hinzugefügt
  • löschte die Lösung suo-Datei
  • hat eine neue ASP.NET-Webanwendung erstellt, um zu testen, ob es sich um ein VS-Installationsproblem handelt => Ich kann dieses neue Projekt/diese neue Lösung debuggen
  • starten Sie den Computer mehrmals neu
  • reparierte die vs.net Installation
  • habe ein IISReset durchgeführt
  • hat die Webanwendung aus IIS entfernt
  • verwenden Sie die Schaltfläche Virtuelles Verzeichnis erstellen unter Projekteigenschaften der Webanwendung, um eine neue Webanwendung in IIS zu erstellen
  • die Framework-Version jedes Projekts wurde von 3.5 auf 4.0 geändert
  • Öffnete die Lösung auf meinem zweiten Rechner => gleiches Verhalten
  • microsoft Connect auf Bugs/ähnliche Probleme gecrawlt
  • Verbrachte 7 Stunden.

Das ist das zweite Mal in meinem Leben. Das letzte Mal habe ich es durch Löschen des Ordners "Temporäre ASP.NET-Dateien" gelöst. Diesmal benötige ich jedoch Ihre Hilfe.

328

Rechtsklick auf Lösung -> Eigenschaften

Suchen Sie unter Allgemeine Eigenschaften -> Startprojekt

Wählen Sie mehrere Startprojekte aus

wählen Sie Start action für die Projekte aus, die Sie debuggen möchten.

176
Hans K

Ich hatte das gleiche Problem und nach dem googeln habe ich zwei typische Lösungen dafür gefunden:

  1. Stellen Sie sicher, dass der Silverlight-Debugger im .Web-Projekt aktiviert ist. Öffnen Sie die Projekteigenschaften und wählen Sie den Silverlight-Debugger auf der Registerkarte "Web" aus.

  2. Starten Sie Visual Studio neu und löschen Sie alle Ordner bin und obj.

Aber keines davon hat bei mir funktioniert . Dann hat jemand einen Thread erwähnt, der versucht, stattdessen IE als Browser zu verwenden. Dadurch funktionierten das Debuggen und die Haltepunkte wieder!

Bearbeiten:

Später habe ich mit IE9 nicht gekämpft, weil es an den falschen Prozess anhängt. Anstatt jedes Mal manuell eine Verknüpfung zum richtigen IE -Prozess herzustellen, habe ich einen tollen Trick gefunden :

  • Klicken Sie mit der rechten Maustaste auf eine der generierten Seiten im .Web-Projekt (.html oder .aspx).
  • Klicken Sie auf "Durchsuchen mit ..."
  • IE als Standardbrowser festlegen (wirkt sich nur auf die Browserauswahl von Visual Studio aus)

Jetzt startet Visual Studio beim Ausführen des .Web-Projekts IE und stellt eine Verbindung zum richtigen Prozess her. Das sollte es tun.

78
angularsen

Wann immer ich diesen Fehler hatte, stellte sich heraus, dass der Ordner, aus dem Visual Studio Assemblys lädt, sich von dem Ordner unterscheidet, aus dem die Webanwendung ausgeführt wird.

Das heißt, auf dem Anwendungsserver wird die Anwendung ausgeführt

C:\dev\MyApplication\bin 

aber Visual Studio debuggt von

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

Hinweis - Aus verschiedenen Gründen debugge ich mit IIS als Anwendungshost anstelle des eigenständigen Gizmos, das die meisten Leute verwenden. Dies könnte den Nutzen meiner Antwort beeinflussen!

pdate:

Für IIS ist das Anwendungsserververzeichnis (dh C:\dev\MyApplication oben) das für die Webanwendung konfigurierte physische Verzeichnis kann durch Ändern der Grundeinstellungen für die App gesteuert werden.

Für Visual Studio ist das Debug-Verzeichnis (d. H. C:\dev\MyOtherApplication oben) das Verzeichnis, in dem sich Ihre svc -Dateien befinden, normalerweise das gleiche Verzeichnis wie Ihre csproj -Projektdatei.

54
Bevan

Das Problem stellte sich für mich heraus, dass das Kontrollkästchen Eigenschaften-> Erstellen-> Code optimieren in der Debug-Konfiguration aktiviert war. Deaktiviert, neu erstellt und das Debuggen funktionierte wie gewohnt.

46
Samuel Jack

Der Grund für die aufgetretenen Probleme ist, dass die PDBs ("PDB steht für Program Database", ein proprietäres Dateiformat (von Microsoft entwickelt) zum Speichern von Debugging-Informationen zu einem Programm) aus bestimmten Gründen nicht aktuell sind :

1- Wie Bevan sagte, debuggen Sie möglicherweise eine andere Anwendung!

2- Sie debuggen eine andere Version derselben Anwendung. Beispielsweise haben Sie eine zuvor erstellte Anwendung mit der aktuellen Version des Codes zum Debuggen angehängt, ohne sie (erneut) zu erstellen.

Das Reinigen oder Neuerstellen der Lösung löst solche Probleme für mich.

Versuchen Sie, die gleiche Anwendung mit VS 2008 zu debuggen, um sicherzustellen, dass das Problem nicht bei Ihnen liegt.

21
Sameh Deabes

Ich hatte das gleiche Problem, ich debuggte mein Projekt und ich musste mit der rechten Maustaste auf das Projekt klicken und "Neue Debug-Instanz" auswählen. Ich musste das nur einmal machen, danach funktionierte es wie gewohnt.

20
campo

Dieser Fehler tritt ab und zu bei mir auf, und ich kann ihn immer auf die Projekteinstellungen für die betreffende Baugruppe zurückführen. Sie müssen nicht warten, bis Ihr Code einen Unterbrechungspunkt nicht berücksichtigt oder bis Sie den Unterbrechungspunkt festlegen, um zu wissen, welche Assemblys Symbole geladen haben.

Wenn Sie ein Projekt im Debug-Modus ausführen, werden im Ausgabefenster die Assemblys mit den folgenden Symbolen aufgelistet (Sie müssen das Bild möglicherweise in einer neuen Registerkarte öffnen): T

Output window

In diesem Fall sind in BASD.Core.Data.dll KEINE Symbole geladen. Sie können dann die Projekteinstellungen für diese Assembly mit denen einer anderen Assembly vergleichen, die Symbole geladen hat, um herauszufinden, warum manche Symbole laden und manche nicht.

"Für mich" jedoch "jedes Mal", wenn dies geschieht, weil die Debug-Informationen nicht erstellt werden. Also öffne ich Projekteigenschaften> Erstellen> Erweitert in einem (C #) Projekt.

Für Basd.Core.Data.dll oben, d. H. Keine Symbole, lauteten die erweiterten Build-Einstellungen wie folgt:

pdboff

Während für Basd.Core.Configuration.dll, d. H. Eine Assembly, in der ich einen Haltepunkt setzen und treffen konnte, die Einstellungen waren:

pdbon

Daher gebe ich Debug-Informationen im letzteren Projekt und nicht im ersten Projekt aus, sodass ich den Haltepunkt in Basd.Core.Configuration.dll erreichen kann

Beachten Sie außerdem, dass es nicht ausreicht, für eine bestimmte DLL eine PDB-Datei im Ordner bin eines Projekts zu haben, da diese möglicherweise veraltet ist und daher von Visual Studio nicht als gültige Symboldatei für die DLL erkannt wird Du versuchst durchzukommen.

Beachten Sie auch, dass das Ändern von Build-Konfigurationen die Build-Info-Einstellungen ändern kann und woher Symbole abgerufen werden.

(Mir ist klar, dass ich mich in diesem Fall im Freigabemodus befinde, die Methode jedoch weiterhin angewendet wird.)

18
rism

Gehe zu Projekteigenschaften -> Erstellen -> Erweitert ...

Wählen Sie im Abschnitt "Ausgabe" in der Dropdown-Liste "Debug-Informationen" die Option "Vollständig"

14
Rafal

Stellen Sie sicher, dass Sie Ihr Programm im DEBUG-Modus und nicht im RELEASE-Modus ausführen.

13
MrOli3000

Ich habe dieses Problem gerade gemäß Bereitstellen von Silverlight-Anwendungen behoben. (Diese Antwort ist ein Duplikat von einigen anderen, aber ich werde versuchen, es genauer zu erklären.)

Das Problem ist höchstwahrscheinlich, dass Ihre Silverlight-Anwendung beim Erstellen/Starten nicht ordnungsgemäß für Ihre Webanwendung bereitgestellt wird. Dies ist ein Referenzierungsproblem - es ist leicht zu verstehen, aber beim ersten Auftreten nicht offensichtlich.

Wie bei jeder anderen Projektreferenz sollte die Ausgabe des referenzierten Projekts zum Debuggen in den Ordner bin des referenzierenden Projekts kopiert werden. Bei Klassenbibliotheken geschieht dies, wenn Sie mit der rechten Maustaste klicken und 'Verweis hinzufügen ...' auswählen. Für Silverlight sollten Sie einen Verweis über die Projekteigenschaften hinzufügen.

  • Klicken Sie mit der rechten Maustaste auf Ihr Projekt und wählen Sie "Eigenschaften".
  • Wählen Sie links die Registerkarte 'Silverlight-Anwendungen'
  • Klicken Sie auf die Schaltfläche 'Hinzufügen ...' und wählen Sie Ihr Silverlight-Projekt aus dem Dialogfeld aus

Dadurch wird ein Verweis auf die Silverlight-Anwendung von Ihrer Hosting-Webanwendung hinzugefügt und sichergestellt, dass die Datei xap beim Erstellen oder Bereitstellen in die Webanwendung kopiert wird. Das bedeutet, dass sich die aktuelle Silverlight-App und ihre Debug-Dateien in der Anwendung befinden, für die das Debugging durchgeführt wird, und Sie können den Code schrittweise durchlaufen.

9
Kirk Broadhurst

Wenn Sie ein Webprojekt debuggen, stellen Sie sicher, dass das Attribut debug = "true" in Ihrer web.config-Datei festgelegt wurde:

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

Ich hatte das gleiche Problem unter Windows 7 und versuchte alles: DLLs bereinigen, die Liste der Module untersuchen, "Just My Code" deaktivieren und so weiter.

Das Problem wurde behoben, nachdem ich Visual Studio "als Administrator" ausgeführt habe. Ehrlich. Warum konnte Microsoft mich nicht warnen, dass es nicht "als Administrator" läuft? Es würde mir einige Stunden Arbeit ersparen.

8
Ector

Für mich war das Problem, dass ich "Code optimieren" auf der Registerkarte "Erstellen" in den Einstellungen meines Projekts aktiviert hatte.

8
Joshua Walsh

Debug -> An Prozess anhängen ->
wählen Sie Debuggen Sie diese Codetypen: Option ->
Wählen Sie Managed v3.5, v3.0, v2.0 oder Managed v4.5 , v4.0 enter image description here

7

Hatte das selbe Problem

Aus irgendeinem Grund wurde eine der DLLs im GAC registriert, daher hatte sie immer eine andere Version als der Code.

Nachdem ich es aus dem GAC entfernt hatte, war das Problem behoben

7
Stikut

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

Wenn Sie eine IIS - Webanwendung in Visual Studio 2008 debuggen, indem Sie eine Verbindung zum Prozess w3wp.exe herstellen, anstatt den ASP.NET-Entwicklungsserver zum Debuggen zu verwenden (beginnen Sie mit dem Debuggen), liegt möglicherweise folgendes Problem vor:

Visual Studio verweist möglicherweise weiterhin auf eine Symboldatei (während des Debuggens verwendete Datei) aus Ihrer DLL aus einem IIS -Prozess, der veraltet ist. Und diese Symboldatei wurde durch eine erneute Kompilierung des .NET-Quellcodes neu erstellt, aber der Prozess IIS verweist immer noch auf die alte Symboldatei.

Zum Beheben:

Beenden Sie einfach das Debuggen in Visual Studio, starten Sie die Webanwendung neu und stellen Sie eine neue Verbindung zum Prozess her. Dann sollten sich die Haltepunkte wieder von gelb (wenn Sie diesen Fehler sehen) in rot ändern.

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

Weitere Dinge zum Ausprobieren (neue Situation heute gefunden):

Führen Sie jede Kugel in dem Link unter EINEM AT EINER ZEIT aus, aber wiederholen Sie meine Schritte unten mit jeder, die Sie versuchen.

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

1.) Beenden Sie das Debuggen (drücken Sie das rote Quadrat) in Visual Studio
2.) Lösung reinigen
3.) Erstellen Sie die Lösung
4.) [BULLET ANLEITUNG HIER EINFÜGEN]
5.) Tools> An Prozess anhängen (oder mit dem Debuggen beginnen)
6.) Starten Sie das Programm, an das Sie Anhängen, und führen Sie es so aus, dass Ihr Code getroffen wird

6 erklärt:

Wenn Sie eine Verbindung zu nunit.exe herstellen, öffnen Sie NUnit und führen Sie einen Test durch, damit Ihr Haltepunkt erreicht wird

Wenn Sie eine Verbindung zu w3wp.exe (IIS-Site) herstellen, öffnen Sie Ihre Site im Browser und wechseln Sie zu der Seite, die Ihren Haltepunkt erreicht

BEARBEITEN:

Heute habe ich festgestellt, dass beim Debuggen eines Projekts, das nicht als Startprojekt festgelegt wurde, dies angezeigt wird. Wenn Sie eine Verbindung zu Ihrem Prozess w3wp.exe herstellen, wird das Debuggen für das als Startprojekt festgelegte Projekt in Betracht gezogen. Klicken Sie zum Auflösen mit der rechten Maustaste auf das Webanwendungsprojekt und wählen Sie "Als Startprojekt festlegen". Versuchen Sie dann erneut, eine Verknüpfung zu Ihrem Prozess herzustellen.

6
MacGyver

Das Szenario lautet wie folgt: Ein bestimmtes Projekt ist Ihr Startprojekt (z. B. mit der Main-Methode). Dieses Projekt verweist auf andere Projekte in Ihrer Lösung. Haltepunkte in den anderen Projekten werden nicht erreicht.

Schnelle Lösung: Wenn Sie Ihre Lösung erstellen, suchen Sie im Ausgabepfad Build (normalerweise bin\Debug) nach dem Startprojekt. Suchen Sie in den DLL - und PDB-Dateien nach den Projekten, auf die Sie verweisen. Stellen Sie sicher, dass das Datum der letzten Änderung das Datum ist, an dem Sie Ihre Lösung zuletzt erstellt haben. Wenn dies nicht der Fall ist, kopieren Sie sie aus dem Ausgabepfad "Build" für jedes Projekt in den Ausgabepfad "Build" für Ihre Startprojekte. Zum Beispiel:

Projekt A hat Main. Es verweist auf Projekt B. Ihre Haltepunkte werden in Projekt B nicht erreicht. Kopieren Sie die DLL- und die PDB-Datei aus dem Build-Ausgabepfad von Projekt B in den Build-Ausgabepfad von Projekt A. Führen Sie dann Ihre Lösung aus. Der Haltepunkt wird nun erreicht.

Jetzt müssen Sie herausfinden, warum Projekt A nicht über die DLL- und PDB-Datei von Projekt B kopiert. Die Antworten hier decken die meisten Szenarien ab. Ein unberührtes Szenario besteht darin, sicherzustellen, dass Ihre Projekte und Ihre Lösung ordnungsgemäß an TFS gebunden sind. Ich hatte einige Projekte gebunden und einige nicht richtig gebunden. Das hat das Problem für mich verursacht. Nachdem ich das behoben hatte, verschwand das Problem und ich musste die DLL- und PDB-Dateien nicht mehr kopieren.

5

Die Lösung für das gleiche Problem bestand in meinem Fall aus der folgenden Kombination von Schritten:

  1. Lösung -> Eigenschaften Mehrere Startprojekte auswählen Wählen Sie Startaktion für die Projekte aus, die Sie debuggen möchten.
  2. Der Service wurde aus den Servicereferenzen entfernt und die Lösung wurde bereinigt.
  3. Erstellen Sie das Dienstprojekt neu
  4. Es wurde wieder zu den Servicereferenzen hinzugefügt
  5. Bereinigen Sie die Lösung und erstellen Sie sie neu.
4
DIM

Um dieses Problem in Web.config zu beheben, musste ich nur debug="true" hinzufügen

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

Was mir bei der Suche nach dieser Lösung geholfen hat, war das Durchsuchen des Fensters Module während des Debuggens. Dabei stellte ich fest, dass für meine geladenen ASP.NET-DLLs Folgendes vorhanden war: Binary wurde nicht mit erstellt Debug-Informationen.

Ich hatte das selbe Problem aber in VS2013 für eine Web App. Für mich bestand die Antwort darin, 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 "Erstellen" für jedes Projekt, das Sie debuggen möchten

Sobald ich dies tat, begannen alle meine Haltepunkte zu funktionieren.

3
joehanna

Ich habe versucht, die Datei .pdb im Ordner obj\debug umzubenennen, eine saubere Lösung erstellt und neu erstellt.
Es wurde eine neue .pdb Datei erstellt und ich konnte Haltepunkte korrekt treffen.

2
Mithran

Öffnen Sie die Webanwendungs-URL über den Browser und verwenden Sie dann im VS.Net IDE Tools -> AttachtoProcess

dann an aspnet_wp.exe anhängen.

Der Debugger beginnt zu arbeiten

2
madhusudhan

Okay, los geht's:

(In einer "Silverlight-App": Bitte überprüfen Sie zuerst, ob in Ihrem Serverprojekt "Eigenschaften" unter "Web" die Option "Silverlight" aktiviert ist. Wenn dies nicht funktioniert, versuchen Sie es unten.)

Führen Sie beim ersten Mal Folgendes aus: devenv.exe/ResetSettings und 1: Klicken Sie im oberen Menü auf Debug-Tag. 2: Klicken Sie auf Optionen und Einstellungen. 4: Kreuzen Sie das Kästchen an. 5: Und jetzt werden alle Symbole heruntergeladen und neu konfiguriert :)

Wenn es danach noch einmal passiert, löschen Sie einfach den Ordner, in dem sich die Symbole befinden:

1: Klicken Sie im oberen Menü auf Debug-Tag 2: Klicken Sie auf Optionen und Einstellungen 3: Klicken Sie unter "Debugging" und unter "Symbole" auf die Schaltfläche "Leerer Symbol-Cache".

2
2FD

Für meine WPF-App habe ich den Anwendungsordner gelöscht, "Get Latest" erneut aus der Quellcodeverwaltung abgerufen und neu erstellt. Alle Haltepunkte funktionieren jetzt hervorragend.

Ich hatte das gleiche Problem - ich habe viel Zeit verloren, um das Debuggen in Visual Studio zum Laufen zu bringen.

Am Ende war es Nuget - ich hatte 3 Versionen von Newtonsoft.Json (über 7 C # -Projekte). Die Lösung wurde kompiliert, konnte aber nicht debuggt werden.

Ich habe das Problem behoben, indem ich Folgendes in der Package Manager-Konsole von Nuget ausgeführt habe:

PM> Update-Paket Newtonsoft.Json

2
DeveloperAlex

Ich musste manuell alle Instanzen der DLL aus der Registrierung und alle Instanzen der DLL von meinem lokalen Laufwerk deinstallieren. Deinstalliert/neu installiert meine App und jetzt im Haltepunkte schlagen! Verschwendete einen halben Tag dabei :(.

2
jason02

Eine weitere Anekdote, die nützlich sein könnte-

Ich bin auf dieses Problem gestoßen, als eines meiner Projekte Dateiverweise aus einem Release-Ausgabeordner verwendete. Als die Build-Ergebnisse in einem Warenordner abgelegt wurden, haben diese Release-DLLs die Debug-DLLs überschrieben.

Die Lösung bestand darin, sicherzustellen, dass in der csproj-Datei der HintPath meiner Referenz vorhanden war

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

und nicht

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

1
BeauJest

Löschen Sie die XAP-Datei, wenn Ihr Haltepunkt nicht erreicht wird. In YourProject.Web/ClientBin Löschen Sie YourProject.xap. Ich habe alle oben versucht und stolpere über dieses Update, funktioniert immer. Bereinigen Sie das Projekt auch nach dem Löschen.

1
Donald Powell

Versuchen Sie, Silverlight-Anwendungsprojekt als Startprojekt festzulegen: Klicken Sie mit der rechten Maustaste auf Projekt -> Als Startprojekt festlegen. Drücken Sie dann F5 und prüfen Sie, ob Sie Haltepunkte abfangen können ...

Versuchen Sie, Browsing-/temporäre Daten in Ihrem Browser jedes Mal zu löschen, wenn Sie Änderungen an der Silverlight-Anwendung vornehmen

1
ITmeze

Ich hatte das gleiche problem Im Anschluss arbeitete für mich

Gehe zum web application --> Properties --> Silverlight Applications

Wenn Sie Ihre Silverlight-Anwendung dort nicht in der Liste sehen, klicken Sie auf Hinzufügen und wählen Sie Ihre Silverlight-Anwendung aus der Dropdown-Liste "Projekt" aus und fügen Sie sie hinzu.

1
Shahid Iqbal

Ich verwende VS 2008 und habe diesen Fehler erhalten. Ich habe alles andere ausprobiert, was hier und auf einigen anderen Websites vorgeschlagen wurde, aber nichts hat funktioniert.

Die Lösung war recht einfach und es wurden zwei andere Lösungen auf dieser Seite erwähnt, die mich in den richtigen Bereich brachten.

  1. Gehen Sie zum Menü Projekt und klicken Sie auf Eigenschaften (Sie können auch mit der rechten Maustaste auf den Projektnamen im Projektmappen-Explorer klicken und Eigenschaften auswählen).

  2. Wählen Sie links die Registerkarte Kompilieren.

  3. Stellen Sie im Textfeld "Ausgabepfad erstellen:" sicher, dass Sie "bin \" im Textfeld haben.

In meiner Situation wurde auf einen anderen bin-Ordner im Netzwerk verwiesen, was dazu führte, dass die Haltepunkte fehlschlugen. Sie möchten, dass der aktuelle Bin-Ordner Ihres Projekts angezeigt wird.

1
Robert Lawson

Ich hatte genau dieses Problem, als sie auf einem Client - für jede Anwendungslösung - die meisten freigegebenen Assemblys in einen Ordner " Referenzen " kopierten und sie dann hinzufügten die Lösung sowohl als " Lösungselemente " nd als " Projekt "innerhalb der Lösung.

Ich bin mir noch nicht sicher warum, aber einige von ihnen waren debuggbar, andere nicht, obwohl in den Referenzeinstellungen für die Assemblys die korrekten vollständigen Pfade angegeben wurden.

Dieses unvorhersehbare Verhalten hat mich fast verrückt gemacht :)

Ich löste dieses Problem, indem ich alle Assemblys aus dem Ordner " References " entfernte, für die es Projekte mit Quellcode gab, und die Versionsinformationen für sehr gut verfolgte geteilte Versammlungen.

Notieren Sie dies auf jeden Fall, um nicht eine Antwort zu sein, aber das Problem, dass Haltepunkte nicht erreicht werden, hat sich für mich einfach selbst behoben. Nach stundenlangem Löschen von temporären Dateien, Neustarten, Neuinstallieren und erfolglosen Debug-Einstellungen fing es plötzlich an zu funktionieren. Ich war am Rande des Wahnsinns, als wir ohne Grund einen Haltepunkt erreichten. Lieben Sie inkonsistente Käfer, ich.

1
Rufyan

Ich hatte ein ähnliches Problem, außer dass mein Problem albern war - ich hatte 2 Instanzen des eingebauten Webservers, die unter 2 verschiedenen Ports liefen UND ich hatte mein Projekt -> Eigenschaften -> Web -> "Start URL", das auf einen festen Port zeigte, aber Die Web-App lief nicht unter diesem Port. Mein Browser wurde also auf die "Start URL" umgeleitet, die sich auf 1539 bezog, aber die Code-/Debug-Instanz lief unter Port 50803.

Ich habe den integrierten Webserver so geändert, dass er unter einem festen Port ausgeführt wird, und meine "Start-URL" so angepasst, dass auch dieser Port verwendet wird. Projekt -> Eigenschaften -> Web -> Abschnitt "Server" -> "Visual Studio Development Server verwenden" -> spezifischer Port

1
Chris Smith

Bitte überprüfen Sie die Web-Eigenschaften des Web-Projekts (Asp.Net), in dem sich Ihr silverlight xap befindet. Gehen Sie zu Webprojekt Hosten Ihres silverlight xap -> Eigenschaften -> Web -> Abschnitt Debugger -> Stellen Sie sicher, dass das Kontrollkästchen silverlight aktiviert ist.

enter image description here

1

Ich habe viele Dinge ausprobiert. Was hat bei mir funktioniert? Ich habe die Silverlight-App zum 'Als Startprojekt festlegen' gemacht, indem ich mit der rechten Maustaste auf das Projekt geklickt habe. Dann habe ich versucht, es auszuführen (was offensichtlich fehlgeschlagen ist, da es sich auf RIA Services auf einen Webserver stützte, der nicht ausgeführt wurde). Dann habe ich das Webprojekt als Startprojekt zurückgesetzt und es funktioniert.

0
Adam

Ein mögliches Szenario besteht darin, dass die Symbole nicht geladen werden, wenn Ihr Projekt ASP auf Code in einer Anwendung (und nicht auf eine DLL) verweist.

Ich musste die referenzierte Anwendung vorübergehend in eine Klassenbibliothek ändern, während ich den Code debuggte.

0
Josh O'Bryan

Wenn Sie Probleme mit Silverlight-Projekten haben, kann die Lösung recht einfach sein. Nach meiner Erfahrung werden in vielen Fällen Debugsymbole nicht geladen, da die neuen ".xap" -Dateien nicht in einem temporären Ordner (entweder internes VS Cassini oder IIS Express) bereitgestellt werden. In dieser Situation helfen vollständige Neuerstellungen oder das Zurücksetzen der VS-Einstellungen nicht. Die einfachste Lösung besteht darin, temporäre Internetdateien in Ihrem Browser zu löschen. Wenn Sie IE für die Entwicklung und das Testen von Silverlight verwenden, würde ich empfehlen, die Option "Browserverlauf beim Beenden löschen" zu aktivieren, um solche Probleme in Zukunft zu vermeiden.

0
Denis Vuyka

Irgendwann klicke mit der rechten Maustaste auf Haltepunkt -> Speicherort -> überprüfe, ob der Quellcode von der Originalversion abweichen darf.

enter image description here

[EDIT]: Manchmal funktioniert auch die Neuerstellung der gesamten Lösung.

0

Dies ist ein häufiges Problem, wenn das Debuggen von der Anwendung deaktiviert und häufig ausgeführt wird, wenn in der Datei web.config mehrere Transformationen vorhanden sind. Eine Möglichkeit zur Lösung besteht darin, unter Build> Configuration Manager die Debug-Konfiguration sicherzustellen ist für den Start vorbereitet ... Ziemlich häufig ist es, eine Transformation von einer zu einer anderen zu testen und dadurch die Fähigkeit zu verlieren, an bestimmten Punkten zu brechen.

0
Sean Haddy

Dies ist ein so nützlicher Thread, eine Checkliste von Dingen, die Sie versuchen sollten, um dieses schädliche Problem zu lösen. Für mich funktionierte der Wechsel zum Internet Explorer. Es dauerte eine Weile, bis mir klar wurde, dass ich die Web-Eigenschaften des Projekts so eingestellt hatte, dass die Startaktion darin bestand, das externe Programm zu starten

C:\Programme (x86)\Internet Explorer\iexplore.exe

mit den Befehlszeilenargumenten

http: // localhost/MyProject -private

Ich brauchte das -private-Flag, um zu verhindern, dass IE den SWF zwischenspeichert, an dem ich arbeite. Das Zurückschalten von "Externes Programm starten" auf "Spezifische Seite" behebt das Problem, dass keine Symbole geladen wurden.

0
dumbledad

Diese Antwort bezieht sich nicht speziell auf Silverlight, sondern auf den allgemeinen Fehler: Der Haltepunkt wird derzeit nicht erreicht. Für dieses Dokument wurden keine Symbole geladen. Ein Noob-Fehler ist, dass das Projekt in Configuration Manager nicht als Debug festgelegt wurde. Einen Scheck wert

0
Tomas Hesse

Ich habe den einfachsten Weg eingeschlagen. In meiner Lösung mit mehreren Projekten, einschließlich einer Klassenbibliothek, gab es ein Problem mit einer DLL-Datei, die von diesem Klassenbibliotheksprojekt erstellt wurde und die es mir nicht ermöglichte, während der Ausführung Haltepunkte zu setzen, da dies nicht der Fall war Aus irgendeinem Grund habe ich dieses Projekt separat erstellt und auf seine Ausgabe-DLL verwiesen, und jetzt sind die Haltepunkte funktionsfähig

Ich bin mir nicht sicher, ob dir das hilft. wenn nicht du dann jemand neues wie ich, nur weil es bei mir funktioniert hat :)

0
student

Dieser Fehler kann auch beim Remote-Debugging auftreten, wenn Sie nicht die aktuellste ausführbare Datei debuggen. Vergessen Sie beim Remote-Debuggen nicht, neuen Code auf den Remote-Computer zu übertragen, nachdem Sie ihn auf Ihrem lokalen Entwicklercomputer (neu) erstellt haben!

0
ThePartyTurtle

Ich debugge, indem ich an IIS anhänge. Ich habe in der Produktionsdatei web.config nach neuen Einstellungen gesucht und vergessen, die Datei web.config zu aktualisieren, um das Debuggen zu ermöglichen.

Stellen Sie sicher, dass das Element die Debug-Einstellung auf true hat. Mit anderen Worten:

<compilation defaultLanguage="c#" debug="true" targetFramework="4.0">
0
James Becwar

Was ich getan habe, um dieses Problem zu beheben, war auf der Seite, auf der mein Haltepunkt nicht erreicht wurde, ich habe den Ordner ausgewählt> ein vorhandenes Element hinzufügen und dann das Element aus seinem Speicherpfad auswählen. Dadurch konnte der Haltepunkt arbeiten.

0
Pomster

Ich hatte dieses Problem, aber in meinem Fall lag es an einem verzögerten Laden des Moduls, das ich zu debuggen versuchte. Ich hatte ein DLL, das mit meinem Hauptprojekt verknüpft war, und das DLL war das, was ich debuggte. Die DLL wurde nur aufgerufen, wenn bestimmte Funktionen in der Hauptanwendung aufgerufen wurden, sodass VS2010 das Modul erst nach dem Aufruf dieser Funktionen lud.

Als ich das Projekt startete, erhielt ich diese Nachricht, aber als ich die Funktion ausführte, hatte der Debugger das Modul und die zugehörigen Debugging-Informationen geladen.

Dieser Thread hat mir sehr geholfen: http://geekswithblogs.net/dbutscher/archive/2007/06/26/113472.aspx

0
cjbarth