it-swarm.com.de

Die Funktion zum Bearbeiten und Fortfahren funktioniert nicht mehr in Visual Studio 2010

Die Visual Studio-Funktion zum Bearbeiten und Fortfahren wurde in Visual Studio 2010 gestoppt. Ich weiß nicht, was das Problem verursacht hat.

Ich arbeite an einem Windows-Anwendungsprogramm, das C # verwendet. Diese Anwendung wurde ursprünglich in Visual Studio 2008 entwickelt und später auf Visual Studio 2010 aktualisiert.

Alles funktionierte gut, einschließlich Bearbeiten und Fortfahren, bis ich das .NET Framework von 3.5 auf 4.0 aufgerüstet habe.

Wenn ich jetzt den Debug-Modus verwende, wird beim Ändern einer beliebigen Codezeile in IDE die folgende Meldung angezeigt:

Es wurden Änderungen vorgenommen, die nicht kompiliert werden können. Die Ausführung kann erst fortgesetzt werden, wenn Die Kompilierungsfehler behoben wurden.

In der Tat gibt es keine Kompilierungsfehler, und ich muss das Visual Studio neu starten, damit die Updates ausgeführt werden.

Wie kann ich bearbeiten und weiterarbeiten?

41
Cracker

Die Funktion zum Bearbeiten und Fortfahren funktioniert nicht mit dem Schlüsselwort dynamic.

Ich habe versucht, die Methode zu entfernen, die einen dynamic-Parameter verwendet, und das konvertierte Projekt funktioniert jetzt in Visual Studio 2010.

Internetrecherchen zeigen, dass dies ein Fehler ist, der an Microsoft gemeldet wurde. Der Link unten hat mehr Details:

20
Cracker

Klicken Sie in der Ansicht des Projektmappen-Explorers mit der rechten Maustaste auf jede Referenz der Referenzen, und wählen Sie Eigenschaften. Unterschreiben Sie in der Ansicht Eigenschaften das Feld Eingebettete Interop-Typen mit False. Das funktioniert für mich.

43
Dianyang Wu

Ich hatte gestern den Profiler von Microsoft verwendet, und danach kam meine Funktion "Bearbeiten und fortfahren". Nach stundenlangem Frust wurde mir schließlich klar, dass ich den Befehl VsPerfCLREnv / globaloff vom Befehl Prompt ausführen und meinen Computer neu starten musste. Nun habe ich mein Edit und gehe in Zukunft weiter. Es hat übrigens nichts mit der Zielplattform zu tun. Es funktioniert mit einer Zielplattform, die auf Any CPU ohne Probleme eingestellt ist.

5
user1690792

Ich hatte eine Excel-Datei "embed interop types" == true. Wenn ich es auf "false" geändert habe, wurde die Bearbeitung bearbeitet und die Arbeit fortgesetzt.

5
Jazz

Ich hatte dieses Problem in Visual Studio 2013 und: -

  • Manchmal ist es einfach, die Lösung zu schließen und wieder zu öffnen, aber wenn dies nicht der Fall ist
  • starten Sie Visual Studio neu (Lösung schließen, Visual Studio beenden, Visual Studio erneut öffnen, Lösung erneut öffnen, Debugging erneut mit Bearbeiten & Fortfahren versuchen). 

In meinem Fall hatte ich weder Interop-Typen, die eingebettet waren, noch hatte mein Code das Schlüsselwort dynamic, und ich hatte eine vollständige Bereinigung ohne Erfolg durchgeführt. Ich war jedoch oft ausgeführt, debuggen und neu gestartet, daher hatte es vielleicht etwas mit dem Speicher zu tun - es dauerte mehr als eine Minute, bis Visual Studio geschlossen wurde abspielen).

4
CJBS

Ich würde versuchen, alle Dateien zu bereinigen, die von VS generiert werden. Also würde ich die Verzeichnisse bin und obj und auch die Dateien *.suo und *.user löschen. Da diese Dateien automatisch generiert werden, sollte dies nichts ändern (obwohl ich natürlich ein Backup aller Dateien machen würde, nur für den Fall, dass andere Dateien versehentlich dort abgelegt wurden).

Diese Dateien können manchmal beschädigt werden (in alten VC++ usw. ist dies häufig der Fall), und VS kann sehr komisch wirken.

2
Hans Olsson

Ich habe alle oben genannten Lösungen ausprobiert, von denen keine für mich funktionierte. Wenn ich die Ablage- und Objektordner in Visual Studio gelöscht und erneut ausgeführt habe, fängt es an zu arbeiten. 

2
Bopy

In meiner Situation fügte jemand einer Referenz auf die Projektausgabe der Referenzliste hinzu: Suchen Sie im Projektmappen-Explorer unter [ProjectName]\References nach [ProjectName *] und entfernen Sie sie. 

Wenn das Projekt auf Code von einer Kopie von sich selbst angewiesen ist, können Sie nicht "Bearbeiten und fortfahren". In der Warnliste können (möglicherweise mit größerer Wahrscheinlichkeit in einem größeren Projekt) "Konflikte mit importiertem Typ" -Meldungen auftreten, wenn dies die Ursache des Problems ist.

1
Griknok

In Visual Studio 2015 habe ich den Ordner .vs gelöscht (in dem sich die neue .suo-Datei des Stils befindet), alle bin und obj gelöscht und auch deinstalliert Resharper 2015 . Bearbeiten und Fortfahren ist zurück .

(Randbemerkung: Intellisense zeigt jetzt fast sofort Autocomplete, wohingegen es vor zwei bis fünf Sekunden dauerte, möglicherweise eine Verschlechterung der Verschärfung, und möglicherweise nicht verwandt ...)

1
Thierry_S

bei der Arbeit mit der VS2017-Community hatte ich dieses erschwerende Problem: Wenn Sie ein vorhandenes Projekt portieren, ist das Tag EmbedInteropTypes möglicherweise noch nicht in der .csproj-Datei enthalten, eine Suche ist nicht sinnvoll. Wenn dies der Fall ist, fügen Sie das Tag am Ende der Eigenschaftsgruppe Debug | x86 (oder was auch immer Sie verwenden) zur .csproj mit einem Texteditor hinzu:

vor:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
    <DebugSymbols>true</DebugSymbols>
    <OutputPath>bin\x86\Debug\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <DocumentationFile>bin\Debug\MyProject.XML</DocumentationFile>
    <DebugType>full</DebugType>
    <PlatformTarget>x86</PlatformTarget>
    <ErrorReport>Prompt</ErrorReport>
    <Prefer32Bit>false</Prefer32Bit>
  </PropertyGroup>

nach dem:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
    <DebugSymbols>true</DebugSymbols>
    <OutputPath>bin\x86\Debug\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <DocumentationFile>bin\Debug\MyProject.XML</DocumentationFile>
    <DebugType>full</DebugType>
    <PlatformTarget>x86</PlatformTarget>
    <ErrorReport>Prompt</ErrorReport>
    <Prefer32Bit>false</Prefer32Bit>
    <EmbedInteropTypes>false</EmbedInteropTypes>
  </PropertyGroup>

Dies muss mit allen Projekten geschehen, die zur Lösung gehören! 

1
Andy3D

In VS2013 musste ich in den Debug-Optionen "Verwalteten Kompatibilitätsmodus verwenden" aktivieren. Ich denke es liegt daran, dass ich ein .Net 4-Projekt habe, das auf eine .Net 2-Assembly verweist.

Für ein anderes Projekt in derselben Lösung musste ich in den Projekteigenschaften die Option "TRACE-Konstante definieren" deaktivieren.

1
AndrewS

Ich verstehe, dass dieser Beitrag alt ist, aber ich hatte dieses Problem in letzter Zeit, und dieser Blogbeitrag zeigt mir, wie ich es beheben kann.

  • Löschen Sie den Ordner obj
  • Löschen Sie den Ordner bin . Sie können Bibliotheken, Datendateien usw. nach dem Entfernen wieder in den Ordner kopieren und einfügen.
  • Unter VS, Menü Lösungen -> Lösung löschen .

Das funktioniert mehrmals für mich.

1
Hao Nguyen

Für wen kommt dieser Fehler auch bei Visual Studio 2017 noch an

Keine dynamischen/Portable Class Libraries/Nuget-Pakete oder Abhängigkeitsprobleme. Keine Fehler oder Warnungen, die von Visual Studio hervorgehoben werden.

Nach Stunden, die ich mit dem Ausprobieren aller in diesen und anderen Threads und Webseiten veröffentlichten Lösungen verbracht hatte, bestand die einzige Lösung für mich darin, check-in, den Arbeitsbereich und Map&Get wieder zu entfernen.

Um den Arbeitsbereich zu entfernen, Source controlAdvancedWorkspaceRemove.

Ich verwende Visual Studio 2017 Community aktuell und nach einer relativ neuen Installation auf einem neuen Computer (eine Woche und einige Arbeitsstunden).


Methoden, die ich vor der oben genannten Lösung ohne Erfolg getestet habe

  • Stellen Sie sicher, dass Bearbeiten & Fortfahren in den Visual Studio-Optionen aktiviert ist. Ziehen Sie den Haken zurück und haken Sie ihn wieder an
  • Löschen von bin und obj für alle Projekte in Lösung
  • Alles säubern und neu aufbauen, VS/Neustart in Kombination mit den obigen Angaben erneut starten
  • Überprüfen der Kompilierungsoptionen und Nuget-Pakete und der DLL-Kompatibilität für die Projekte, inspiriert durch this
  • Entladen der Projekte in verschiedenen Kombinationen zum Testen von Abhängigkeitsproblemen oder anderen Problemen (inspiriert durch this )
  • Lösung löschen und erneut herunterladen (ohne den Arbeitsbereich zu entfernen)
  • Sign False, um Interop-Typen einzubetten
  • Setzen Sie <_ResolveReferenceDependencies> auf true wie erklärt hier
  • Kombinationen der oben genannten mit Neustart von VS und Neustarts

Danach habe ich eingecheckt und die Lösung auf einen anderen Computer heruntergeladen, auf dem dieselbe Version von Visual Studio (2017 Community) ausgeführt wird. Da ich die Edit & Continue-Ausgabe dort nicht bekam, habe ich mich für die Workspace-Entfernung entschieden.

0
alexlomba87

In meinem Fall funktionierte das: Deaktivieren der Option "Quelldateien müssen genau mit der Originalversion übereinstimmen" in Debugging-Optionen. VS Community 2017 hier.

0
Sinus Mackowaty

Ich musste das Häkchen bei "Natives Bearbeiten und Fortfahren aktivieren" in Extras -> Optionen -> Debuggen -> Allgemein entfernen:

enter image description here

0
voxoid

Das Entfernen des * aus den Assembly-Versionen meiner referenzierten Projekte löste das Problem für mich.

Von Github:

"Ich habe dieses Problem in einer Mischung aus VB und C # -Projekten mit [Assembly: AssemblyVersion (1.2.3. *)] Reproduziert. Einmal ein VB Projekt Verweise auf ein C # -Projekt mit dieser Einstellung führen dazu, dass Dinge zusammenbrechen. Es sieht so aus, als hätte es das gleiche Problem in umgekehrter Richtung. "-rhuijben

https://github.com/dotnet/roslyn/issues/28224

(Offenbar leiden wir seit über einem Jahrzehnt unter Problemen mit VS-Bearbeitung und -Fortsetzung. Es ist schockierend für mich, dass das Microsoft Visual Studio-Team nicht genug für die Entwickler gesorgt hat, indem es in diesem Fall ausführlichere Informationen bereitstellt.)

0
yodag123

Für mich wurde dies dadurch verursacht, dass Nuget ein (für Net Framework erstelltes) Paket nicht in ein Net Standard-Projekt heruntergeladen wurde, auf das verwiesen wurde. Nuget trat in eine Endlosschleife ein (siehe Ausgabefenster) ). 

Die -Lösung sollte die Einstellung "Automatische Paketwiederherstellung" deaktivieren. Siehe: https://developercommunity.visualstudio.com/content/problem/26638/nuget-infinite-loop.html

auf diese Einstellung zugreifen Tools> Optionen> NuGet Package Manager> Allgemein  

0
Declan Taylor

Ich habe alles versucht, keiner hat funktioniert. Dies lag anscheinend daran, dass einige Debugging-Optionen auf niedriger Ebene aktiviert waren (Register anzeigen ...).

Extras -> Einstellungen importieren und exportieren -> Alle Einstellungen zurücksetzen

es gelöst

0
smirkingman

Beim Lesen des obigen Projekts hat mein UI-Projekt Shell32 mit "Embed Interop Types" == true. Ich änderte es in false und "edit and continue" begann zu arbeiten.

0
J Frisby

Klicken Sie in der Ansicht des Projektmappen-Explorers mit der rechten Maustaste auf jede Referenz der Referenzen, und wählen Sie Eigenschaften. Unterschreiben Sie in der Ansicht Eigenschaften das Feld Eingebettete Interop-Typen mit False. Das hat für mich funktioniert.

0