it-swarm.com.de

Beseitigen Sie [dynamische] JavaScript-Ansichten in Visual Studio

Seit ich Visual Studio 2010 vor ca. 2 Monaten von Grund auf installiert habe, verhält es sich beim Debuggen von JavaScript-Code, der im IE ausgeführt wird, etwas anders.

  • Wenn ich einen Haltepunkt setze, wird ein Duplikat der Ansicht mit dem Begriff "[dynamisch]" in der Kopfzeile geöffnet und dort der Haltepunkt markiert.
  • Wenn während der Ausführung ein JavaScript-Fehler auftritt, wird dasselbe ausgeführt, bevor die Codezeile markiert wird, die den Fehler ausgelöst hat.
  • Diese "dynamische" Ansicht kann bearbeitet werden, Änderungen haben jedoch keine Auswirkungen - sie werden nicht in der Datei gespeichert.

Ich finde dieses Verhalten ziemlich unangenehm. Jedes Mal, wenn ich beim Debuggen einen Fehler im Code feststelle, wurde der Fehler in der dynamischen Ansicht behoben. Ich drücke auf Speichern. VS beschwert sich nicht. Als nächstes aktualisiere ich die Seite in IE, und - bang - die Änderungen gehen verloren und laden die unberührte alte Version erneut.

Ich konnte nicht herausfinden, wie ich diese Ansichten deaktivieren kann. Vor der Neuinstallation von Visual Studio wurde dies nicht durchgeführt. Es würde nur "dynamische" Ansichten für ein Skript erstellen, das in Inline-Skript-Tags in HTML-Dateien gefunden wird.

47
chiccodoro

Versuche dies IE> Internetoptionen> Einstellungen (unter Browserverlauf)> Auf neue Version der gespeicherten Seiten prüfen: Bei jedem Besuch der Webseite.

Das funktioniert für mich in IE10.

enter image description here

Eine andere Option besteht darin, die Developer-Tools zu öffnen und die Cache-Option Always Refresh from Server auszuwählen, wie im Bild unten gezeigt

enter image description here

40

Versuchen Sie es mit STRG + F5 auf der Webseite. Das hat den Trick für mich gemacht.

Das Problem war, dass ich andere IE - Fenster aus einer vorherigen Debugging-Sitzung geöffnet hatte, sodass die dynamischen Javascript-Dateien immer noch zwischengespeichert wurden.

15
Zain Rizvi

Durch das Öffnen von Entwicklertools - F12 - sollten bei jeder Aktualisierung auch die Cache-Dateien für die Seite gelöscht werden.

3
Benjineer

Das Ändern der Kodierung der betreffenden JS-Datei von einer Windows-Codepage in UTF-8 behebt dies für mich.

Es scheint, dass OEM Extended ASCII Zeichen in der Datei (z. B. ALT-254, die ich für ein Aufzählungszeichen benutze) das Problem mit den Windows-Codepage-Dateien auslösen.

(Visual Studio 2013 Update 5, IE11)

2
Martin Connell

Für Google Chrome:

  • Entwicklerwerkzeuge öffnen (F12)
  • Network Conditions-Tool öffnen
  • Disable Cache auswählen

 enter image description here

2
mkb

Ich hatte das gleiche Problem, dass ich im neuen Code keinen Haltepunkt finden konnte. Und Haltepunkte auf altem Code auf derselben Seite rufen die [dynamische] Version auf. Die bearbeitete Seite wird nicht neu geladen. Dies begann für mich vor einer Woche sowohl in VS2012 als auch in VS2013. Die Verwendung der Aktualisierungsseite und/oder von Ctl-F5 hat für mich nicht funktioniert. ABER das Lesen dieses Threads wies mich auf die Verwendung von F12 zum Öffnen von Entwicklerwerkzeugen. Wenn Sie dieses Fenster geöffnet lassen, während Sie Aktualisieren ausführen, wird der Trick ausgeführt. Danke Leute.

1
MartinDuo

1) Die Seite ohne Debugging ausführen (Debuggen -> Start ohne Debugging)

2) Während die Webseite in Internet Explorer geöffnet ist, drücken Sie Strg-F5 so dass der IE Cache gelöscht wird. Stellen Sie sicher, dass IE den Fokus hat.

3) Schließen Sie IE und führen Sie die Seite erneut mit Debugging aus (Debug -> Start Debugging).

Dies hat das Problem für mich behoben.

0
Ray