Erstes Feature-Update für Visual Studio 2022 ist einsatzreif

Rund zwei Monate nach Erscheinen von VS 2022 legt Microsoft in Version 17.1 der IDE Verbesserungen für Editor, Debugger und die Quellcodeverwaltung nach.

In Pocket speichern vorlesen Druckansicht 14 Kommentare lesen

(Bild: Ken Wolter/Shutterstock.com)

Lesezeit: 7 Min.
Von
  • Dr. Holger Schwichtenberg
Inhaltsverzeichnis

Das am 8. November 2021 erschienene Visual Studio 2022 macht vielen Entwicklerinnen und Entwicklern bisher wenig Freude, da es im Zuge der Umstellung auf eine 64-Bit-Anwendung häufig zu Abstürzen des Editors und der bei der Markteinführung von Microsoft viel gepriesenen Hot Reload-Funktion kam.

Das Unternehmen verspricht nun mit dem ersten Update unter der Versionsnummer 17.1 mehr Stabilität und das bessere Funktionieren von Hot Reload in Verbindung mit Blazor-Anwendungen. In einem ersten kurzen Test am 16. Februar lief das Hot Reloading bei einer Blazor WebAssembly-Anwendung nach Einschätzung des Autors dieser Meldung tatsächlich zuverlässiger als in Version 17.0.

Zu den Highlights im Feature-Update gehört die stark beschleunigte Volltextsuche in Dateien. Dazu startet die IDE nun automatisch einen weiteren Prozess mit Namen ServiceHub.IndexingService.exe. Nutzer können diesen Dienst aber in den IDE-Einstellungen abschalten, falls es zu Problemen kommt.

Unter Settings/Environment/Documents finden Entwicklerinnen und Entwickler nun eine neue Einstellung, die bewirkt, dass Visual Studio bearbeitete Dateien automatisch speichert, wenn die IDE den Fokus verliert. In einem Schnelltest in einer Blazor-Anwendung wurden zwar geänderte Dateien gespeichert, wenn man aus dem Editor per Klick in das Browserfenster wechselt, aber die aktivierte Hot Reload-Funktion hat es nicht mitbekommen; der Browserinhalt wurde erst nach einem expliziten Speichern aktualisiert.

Neu ist auch, dass die IDE die in Visual Studio 2019 eingeführten Code-Cleanup-Funktionen automatisch bei jedem Speichern anwenden kann, wenn Entwickler dies wollen. Die ebenfalls seit Version 2019 vorhandene grafische Benutzeroberfläche für Editor Config Files bietet nun neben "Whitespace", "Code Style" und "Analyzers" auch eine Registerkarte für "Naming Style".

Die in Visual Studio 2019 eingeführten Solution Filter (.slnf-Dateien) können Entwickler nun mit einem Klick um nachträglich hinzugekommene Projekte erweitern. Für die pro Projekt oder Dateityp einfärbbaren Registerkarten lassen sich die gewünschten Farben individuell wählen.

Der C#-Editor in Version 17.1 bietet zudem neue Refactoring-Funktionen: Statische Mitglieder lassen sich in andere Typen verschieben, der Wertetausch von zwei Variablen per Tupel statt über eine temporäre Variable erledigen, die Extended Property-Syntax mit der Punktnotation aus C# 10 auf verschachtelte Syntax anwenden und die Direktive #nullable enable aus dem Code in die Projektdatei verlagern. Die Funktion Go To Definition zeigt nun auch den Quellcode von Assemblies aus NuGet-Paketen an, wenn diese den Quellcode entweder mitliefern oder per Source Link bereitstellen.

Noch experimentell und in den Einstellungen der IDE explizit zu aktivieren ist die Anzeige von Warnungen und Fehlern direkt im Editor statt im Tooltip. Ein von heise Developer durchgeführter Schnelltest zeigt, dass noch nicht alle Warnungen – wie beispielsweise auf das fehlende await in Abbildung 1 – in dieser Form erscheinen.

Optional zeigt Visual Studio 2022 Problemstellen als Tooltip an (Abb. 1).

Die seit vielen Jahren im Debugger vorhandenen Data-Tipps, die den aktuellen Wert von Variablen zeigen, lassen sich nun so konfigurieren, dass sie sich nicht mehr beim Fortbewegen der Maus, sondern erst nach einem Klick schließen.

Ganz neu in Visual Studio 2022 Version 17.1 ist das Fenster "Stack Trace Explorer": Hier können Entwicklerinnen und Entwickler den Text eines Call Stacks hineinkopieren und dann die Methoden in der Aufrufkette im Editor anspringen. Das ist hilfreich, wenn man den Call Stack nicht aus dem aktuellen Debugger-Vorgang, sondern einem früheren Debugging oder einer Protokolldatei hat. Allerdings funktioniert der Stack Trace Explorer in einem ersten Test noch ziemlich hakelig.

Seit einiger Zeit schon arbeitet Microsoft an verbesserten grafischen Oberflächen für die Nutzung der Git-Quellcodeverwaltung innerhalb von Visual Studio. In Version 17.1 können Visual Studio-Nutzer nun Git-Branches grafisch miteinander vergleichen. Dazu wählt man im Menü Git/Manage Branches den Branch aus, der mit dem aktuell geöffneten verglichen werden soll (s. Abb 2).

Git-Branch-Vergleich in Visual Studio 2022 Version 17.1 (Abb. 2).

Im gleichen Fenster ist durch Klick auf einen Commit der Zustand des Repository zu diesem Zeitpunkt zu öffnen (entspricht einem git checkout --detach). Auch die Unterstützung für die gleichzeitige Arbeit mit mehreren Repositories hat Microsoft verbessert: In einer Aktion lässt sich ein Branch in allen an der aktuellen Projektmappe beteiligten Repositories anlegen.

Mit "Line Staging" können Entwickler einen Commit aus den Änderungen an einzelnen Zeilen zusammenstellen. Der Schnelltest zeigt aber, dass Visual Studio die Codezeilen nicht immer klar trennt. Wie Abbildung 3 belegt, lassen sich die Änderung zum Anfügen des XML-Kommentars (Zeile 21 bis 23) und die Änderung am Parameternamen (Zeile 24) getrennt einchecken. Das Feature ist aber genauso wie die Unterstützung für mehrere Git-Repositories in einer Projektmappe auch in der fertigen Version 17.1 noch im Preview-Stadium und muss unter Settings/Environment/Preview Features vom Nutzer aktiviert werden.

Line Staging trennt die Zeilen bisher nicht sauber (Abb. 3).

Zu beachten ist, dass Nutzern von Visual Studio Professional und Visual Studio Enterprise die in diesem Beitrag genannten neuen Funktionen nur dann angeboten werden, wenn sie auf dem "Current"- oder "Preview"-Kanal sind. Kunden, die Visual Studio in den Update-Einstellungen auf "Long Term Support Channel" (LTSC) eingestellt haben, erhalten zwar Fehlerbehebungen über Aktualisierungen durch untergeordnete Updates (17.0.x), aber keine neuen Funktionen. Erst die Version 17.2 wird wieder eine LTSC-Version sein, die Microsoft dann jeweils 18 Monate lang mit Fehlerbehebungen bedient (s. Abb. 4).

Die geraden Unterversionsnummer von Visual Studio erhalten Fehlerbehebungs-Updates für jeweils 18 Monate (Abb. 4).

Parallel zur fertigen Version von Visual Studio 2022 Version 17.1 ist auch bereits eine erste Vorschauversion auf 17.2 erschienen.

In dieser Version unterstützt der Razor-Editor nun endlich die häufig vermissten Code Snippets. Zudem liefert Microsoft hier Unterstützung für die erste Vorschauversion auf .NET 7 und C# 11 mit – beide Installationspakete sollen innerhalb der nächsten Woche erscheinen.

Version 17.2 Preview 1 ist notwendig, wenn man die ebenfalls am 15. Februar erschienene dreizehnte Vorschauversion auf das .NET Multi-Platform App UI (.NET MAUI) nutzen will. Darin hat Microsoft das Anwendungsmodell abermals überarbeitet. Anstelle der in .NET-basierten Webanwendungen verwendeten Bibliothek Microsoft.Extensions.Hosting gibt es nun spezifische Anwendungsstartklassen pro Plattform (Android, iOS, macOS, Windows), die dann eine plattformübergreifende Startklasse (Standardname: MauiProgram) aufrufen, in der UI-Elemente und Bibliotheken konfiguriert werden können. Durch den neuen Mechanismus soll der Anwendungsstart insbesondere auf Android um 13 Prozent beschleunigt werden.

.NET MAUI sollte ursprünglich mit .NET 6 im November erscheinen, wurde dann aber auf das zweite Quartal 2022 vertagt.

(map)