Microsoft
06.04.2022, 09:32 Uhr
Autosave in Visual Studio 17.2
Strg+S ist bei vielen Entwicklern schon eine automatische Bewegung. Wird man ihr überdrüssig, bekommt von dem im Anschluss an Visual Studio eingesetzten Werkzeug falsche Ergebnisse. Abhilfe schafft das neue Autosave-Feature von Visual Studo 2022.
Nur bei den wenigsten Entwicklern ist Visual Studio das einzige Tool, das sie für ihre Arbeit verwenden. Wechselt man das Werkzeug, kommt es allerdings immer wieder zu Problemen: Wird der Code in Visual Studio nicht gespeichert, kann der Code, der im nächsten Tool angezeigt wird, veraltet sein. Bearbeitet man den Code dann in dem anderen Tool bearbeiten, ist er nicht mehr synchron und es ist eine Tortur, alles wieder zusammenzufügen.
Ab der Version 17.2 Preview 1 hilft die neue Autosave-Funktion Entwicklern dabei, diese Pein zu vermeiden. Man findet sie über eine Suche in Visual Studio (Strg+Q) nach dem Begriff "autosave". Dadurch gelangen Sie auf die Seite Environment | Documents unter Tools | Options.
Ist die Option "Automatically save files when Visual Stuido is in the background" aktiviert, wird jedes Mal, wenn Visual Studio den Fokus verliert versucht, jedes nicht freigegebene Dokument in der IDE zu speichern. Dazu gehören Projektdateien, Lösungsdateien und sogar verschiedene Dateien, die nicht Teil des Projekts oder der Lösung sind. Wenn das Speichern einer Datei aus irgendeinem Grund fehlschlägt (zum Beispiel weil die Datei auf dem Datenträger schreibgeschützt ist), behält Visual Studio die Änderungen im Editor bei und lässt die Datei unbearbeitet. Die Absicht ist, dass beim Wechsel zu einem anderen Tool nach einem Moment alle Änderungen in Visual Studio auf die Festplatte übertragen werden.
Übrigens: Ist die Funktion "Code Cleanup on Save" in Visual Stuido 2022 17.2 aktiviert, löst Autosave keinen Code Cleanup aus, weil das Visual-Studio-Team der Meinung ist, dass es stört, wenn die Code-Bereinigung zu oft erfolgt. Sie wird nur ausgelöst, wenn man die Code-Datei explizit speichert, entweder durch einen Befehl oder implizit als Teil eines Builds.