Versionshinweise: Visual Studio 2022 für Mac 17.0
Entwicklercommunity | Systemanforderungen | Dokumentation | Blogs | Wartung |
Update 17.0.6: Dieses Update behandelt diese Probleme.
Update 17.0.5: Dieses Update behandelt diese Probleme.
Update 17.0.4: Dieses Update behandelt diese Probleme.
Update 17.0.3: Dieses Update behandelt diese Probleme.
Update 17.0.2: Dieses Update behandelt diese Probleme.
Update 17.0.1: Dieses Update behandelt diese Probleme.
Neuerungen in Visual Studio 2022 für Mac
Willkommen bei der Version v17.0 von Visual Studio 2022 für Mac. Dies ist die bisher schnellste Version von Visual Studio für Mac mit einer völlig neuen nativen macOS-Benutzeroberfläche, die vollständig unter .NET 6 ausgeführt wird und für Apple Silicon-Prozessoren (ARM64) optimiert ist. Einige der wichtigsten Highlights dieser Version sind:
- Neue native macOS-Benutzeroberfläche
- Unterstützung für die native Ausführung auf M1/Apple Silicon-Prozessoren (ARM64)
- Einführung des Fensters „Git-Änderungen“
- Toolfenster: Andocken mit Drag & Drop
- Entwicklung mit .NET 6
- Unterstützung für C# 10
Visual Studio 2022 für Mac – Blogbeiträge
Der Visual Studio Blog ist die offizielle Quelle für Einblicke in das Produkt, verfasst vom Visual Studio Engineering-Team. In den folgenden Beiträgen finden Sie ausführliche Informationen zu den Releases von Visual Studio 2022 für Mac:
Allgemeine Verbesserungen bei der integrierten Entwicklungsumgebung (IDE)
Neue native macOS-Benutzeroberfläche
Wir haben ein neues Erscheinungsbild in Visual Studio für Mac eingeführt, das die moderne macOS-Benutzeroberfläche mit der produktiven Umgebung kombiniert, die Sie von Visual Studio kennen und schätzen. Einige der offensichtlichsten Änderungen sind:
- Aktualisierte Benutzeroberfläche für alle Toolfenster, Einstellungen und Dokumentregisterkarten.
- Neue helle und dunkle Designs, die mit den macOS-Designeinstellungen synchronisiert werden können.
- Eine neue Statusleiste, die den IDE-Status in der Fußzeile meldet sowie die Anzahl der Warnungen oder Fehler in einer Projektmappe hervorhebt.
Unterstützung für die native Ausführung auf Apple Silicon-Prozessoren (ARM64)
Die integrierte Entwicklungsumgebung läuft jetzt nativ auf Apple Silicon-Prozessoren (ARM64) wie dem M1-Prozessor. Dies war eine der wichtigsten Anforderungen von Kunden auf unserer Entwicklercommunity-Website. Neben anderen Verbesserungen werden große Projektmappen jetzt bis zu 50 % schneller geladen.
Ausführen der IDE unter .NET 6
Die IDE wird jetzt mit der .NET 6-Runtime ausgeführt, während sie vorher mit der Mono-Laufzeit ausgeführt wurde. Dies führte nicht nur zu Leistungsverbesserungen im gesamten Produkt, sondern auch dazu, dass die IDE nativ auf Apple Silicon-Prozessoren (ARM64) ausgeführt werden konnte.
Verbesserte Konsistenz mit Visual Studio (Windows)
- Menüs und Terminologie wurden in der gesamten IDE aktualisiert, um die Handhabung für Visual Studio-Benutzer vertrauter zu gestalten.
- Die Einführung des Fensters „Git-Änderungen“.
- Ein neues Toolfenster mit Drag & Drop-Funktion
Verbesserungen der Barrierefreiheit
Im Zuge des Wechsels zu einer vollständig nativen macOS-Benutzeroberfläche wurde die Barrierefreiheit in der gesamten integrierten Entwicklungsumgebung verbessert:
- Verbesserungen hinsichtlich der VoiceOver-Unterstützung im gesamten Featuresatz
- Die standardmäßigen hellen und dunklen Designs wurden aktualisiert, um den macOS-Farben besser zu entsprechen und den Kontrast zu verbessern.
Toolfenster: Erfahrung beim Andocken mittels Drag Drop
Toolfenster können angedockt (an eine Seite der IDE angefügt) werden, indem sie deren Titel ziehen und sie auf Ablagezielsymbolen ablegen, die in der IDE angezeigt werden. Wenn Sie die Fenster ziehen, werden diese Ablagezielsymbole angezeigt, um die Auswahl einer Seite der IDE oder des Fensters zu vereinfachen, um das Toolfenster zu platzieren.
Behobene relevante Probleme
- Ein Problem wurde behoben, bei dem Sie Dateien nicht auf das IDE-Hauptfenster ziehen konnten, um sie zu öffnen.
- Ein Problem wurde behoben, bei dem neue Dateien nicht gespeichert werden konnten, wenn sie ohne ein geöffnetes Projekt erstellt wurden.
- Korrekturen für die wichtigsten gemeldeten Probleme aus der Entwicklercommunity:
- Reduzierte Regionen und Methoden sind auf Retina-Displays verschwommen.
- VS hängt sich beim Start auf
- Dunkler Modus sollte sich nach den Betriebssystemeinstellungen richten
- Neues abgerundetes quadratisches macOS Big Sur-Symbol
- Drag & Drop: Datei wird versehentlich in anderen Ordner in der Projektmappe verschoben
- Informationen zum Hauptfenster können im Vollbildmodus nicht geschlossen werden
- GTK-Bildlaufansichten funktionieren unter macOS Big Sur Beta nicht richtig
- Geschachtelte Dateien in den Projekten werden nicht angezeigt
- VS2019 macOS: Paket konnte nicht installiert werden.
- „Ihre Testversion ist abgelaufen“ reagiert nicht
Editor
Verbesserungen am gemeinsam genutzten Editor
Teilwortnavigation
Mit STRG+ALT+NACH-LINKS und STRG+ALT+NACH-RECHTS navigieren jetzt zwischen Teilwörtern. Beispielsweise werden in der Zeichenfolge „HelloWorld“ jeweils „Hello“ und „World“ als Teilwörter erkannt. Eine neue Option Bei Doppelklick Unterwort auswählen wurde in Einstellungen > Text-Editor > Verhalten hinzugefügt.
Kopier-/Einfügefunktionen bei mehreren Caretzeichen
Die Kopier- und Einfügefunktionen bei mehreren Caretzeichen wurden verbessert. Bisher führte das Einfügen mehrerer Zeilen bei mehreren Carets dazu, dass die gesamte Zwischenablage an jedem Caret dupliziert wurde. Wenn Sie nun mehrere Zeilen in dieselbe Anzahl von Carets einfügen, wird jede Zeile am entsprechenden Caretzeichen eingefügt.
Zum Verwenden mehrerer Caretzeichen drücken Sie STRG+WAHL+Mausklick, und verwenden Sie WAHL+UMSCHALT+PFEILTASTE, um Auswahlen zu erweitern. Drücken Sie anschließend BEFEHL+C, um den Text in mehrere Auswahlen zu kopieren. Verwenden Sie STRG+WAHL+Mausklick, um mehrere Caretzeichen für jede Zeile zu erstellen, die Sie an den gewünschten Positionen einfügen möchten. Drücken Sie schließlich BEFEHL+V, um jede Zeile an einem eigenen Caret einzufügen.
C#-Sprachtools
Neue schnelle Problembehebungen und Refactoring
In C# 8.0 haben wir Nullable-Verweistypen eingeführt, mit denen Sie deklarieren können, ob NULL erwartet wird. Um Nullable-Verweistypen zu verwenden, müssen Sie entweder der Projektdatei das <Nullable>
enable</Nullable>
-Element oder jeder Quelldatei in Ihrem Projekt das #nullable enable-Pragma hinzufügen. Um diesen Prozess zu optimieren, ist <Nullable>
enable</Nullable>
jetzt in neuen .NET-Projekten automatisch enthalten.
In C# 10.0 führen wir einen Dateibereichsnamespace ein, der Ihnen die Möglichkeit gibt, Klassendefinitionen innerhalb eines Namespace nicht zu schachteln. Durch Refactoring kann ein Namespace in einen Dateibereichsnamespace konvertiert werden. Um Dateibereichsnamespaces verwenden zu können, müssen Sie ihrer Projektdatei zunächst das <LangVersion>
preview</LangVersion>
-Element hinzufügen. Platzieren Sie den Cursor als Nächstes auf einem Namespace. Drücken Sie (Ctrl+. ), um das Menü Schnellaktionen und Refactorings zu öffnen. Wählen Sie Convert to file-scoped namespace (In Dateibereichsnamespace konvertieren) aus.
Beim Refactoring kann beim Anwenden auf Werttypen jetzt is not null
den Vorrang vor is object
erhalten. Um dieses neue Refactoring zu verwenden, platzieren Sie den Cursor auf einer Typprüfung. Drücken Sie (Ctrl+. ), um das Menü Schnellaktionen und Refactorings zu öffnen. Wählen Sie Prefer null check over type check (NULL-Überprüfung gegenüber Typprüfung bevorzugen) aus.
Ein neues Refactoring für das Einführen von Parametern kann einen neuen Parameter aus der Methodenimplementierung in die zugehörigen Aufrufer verschieben.
Automatisch generierte Ausnahmetags in XML-Dokumentationskommentaren
XML-Kommentare generieren nun automatisch ein <exception>
-Tag innerhalb eines <summary>
-Tags, sodass Sie eine Beschreibung hinzufügen können, wenn eine Methode explizit Ausnahmen auslöst.
Razor-Bearbeitung
- <> Farbe in Razor ist schwer zu lesen
- Die Berechnung von Farben in Blazor-Dateien führt zu hohem CPU-Druck.
- Die URL-Vervollständigung in Razor-Dateien funktioniert nicht wie erwartet (duplizierter Pfadinhalt).
F#-Bearbeitung
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity:
- F# Interactive führt keine Befehle aus.
- In F# Interactive wird ein Fehler angezeigt.
- F# Interactive-Absturzbericht
Debuggen
Behobene relevante Probleme
- Es wurde ein Problem behoben, bei dem im Dialogfeld „Ausnahme abgefangen“ beim Doppelklicken auf einen Stapelrahmen der Editor an die falsche Position verschoben wird.
- Ein Problem wurde behoben, bei dem Benutzer angeheftete Debugüberwachungselemente weder speichern noch wiederherstellen können.
- Ein Problem wurde behoben, bei dem das Anheften einer Debugger-QuickInfo Text abschneidet und das Lösen die Anheftfunktion beschädigt.
- Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity:
Testen
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity:
- Schaltfläche „Beenden“ beendet den Komponententest nicht
- Visual Studio Mac schließt den dotnet-Prozess für testhost.dll nicht.
- Parametrisierte Tests werden mit demselben Namen im Komponententestpad angezeigt.
- Regression in v8.5: Das Komponententestpad teilt in manchen Szenarien einige Komponententests fälschlicherweise in separate Knoten auf.
- Das Hinzufügen einer SetupFixture zu einem Komponententest führt dazu, dass das Testpad [Standardnamespace] für alle Tests anzeigt.
- Das VS Mac NUnit-Plug-In kann keine benutzerdefinierte Assemblys laden, und es treten Probleme beim AutoVervollständigen in VS Mac 8.7 Preview auf.
- xUnit-Tests werden nach einem Abbruch nie wieder ausgeführt.
- Nach dem Klicken auf „Ausführung der Projektmappe beenden“ wird der Test weiterhin in Visual Studio für Mac ausgeführt.
- Die Ausführung von Komponententests wird nicht beendet.
Git-Versionskontrolle
Fenster „Git-Änderungen“
In dieser Version wird das Fenster „Git-Änderungen“ aus Visual Studio (Windows) eingeführt. Während Ihrer Arbeit werden Änderungen an Dateien in Ihrem Projekt von Visual Studio für Mac im Abschnitt Änderungen des Fensters Git-Änderungen nachverfolgt. Wenn es an der Zeit ist, Ihre Arbeit zu committen, können Sie dieses Fenster verwenden, um alle vorgenommenen Änderungen zu überprüfen, zu stagen und dann zu committen. Sie können dieses Fenster auch verwenden, um einen Stash für Ihre Arbeit auszuführen, Git-Push- und -Pullbefehle zu initiieren und einen kürzlich vorgenommenen Commit zu ändern.
Klonen aus GitHub und Öffnen in Visual Studio für Mac
Visual Studio für Mac kann jetzt beim Klonen eines Git-Repositorys aus dem Browser geöffnet werden, z. B. auf GitHub. Unterstützung für das „git-client://“-Protokoll wurde hinzugefügt.
Behobene relevante Probleme
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
- Zu viele Klicks für Git-Repository-Commit und -Push
- Git-Vergleich funktioniert nicht.
- Der Bildschirm „Git-Änderungen“ spiegelt nicht den richtigen Branch wider.
- Auschecken eines Git-Branchs friert ein.
NuGet
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
Suche
Neue Optionen für die Gruppierung und Filterung der Suche
Das Fenster „Suchergebnisse“ enthält neue Optionen zur Gruppierung nach Datei/Ordner oder zur Anzeige der Ergebnisse in einer Strukturansicht. Sie können auch innerhalb der Suchergebnisse suchen.
Behobene relevante Probleme
- Ein Problem wurde behoben, bei dem Suchergebnisse von „Suchen in Dateien“ beim Sortieren von Spaltenüberschriften durcheinandergebracht werden.
- Ein Problem wurde behoben, bei dem der erste Buchstaben in Suchergebnissen nicht hervorgehoben wird.
- Ein Problem wurde behoben, bei dem Suchergebnisse die Inhalte von kompilierten Blazor-Komponentendateien enthielten.
- Die Unterstützung für chinesische Zeichen in der globalen Suche wurde korrigiert.
- Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
- „Zu Datei wechseln“ aktualisiert die Liste der Dateien nicht ordnungsgemäß.
- „In Dateien suchen“ füllt den Suchtext nicht ordnungsgemäß vorab auf.
- Problem behoben, bei dem Suchergebnisse an der falschen Stelle angezeigt wurden.
- „In Dateien suchen“ und „Suche per BEFEHL-.“ durchsucht keine Projektmappendateien.
- Die RegEx-Option verursacht eine unerwartete Textersetzung, wenn in Dateien gesucht wird.
- Git-Push wird nicht unterstützt.
- Git-Informationen zur Verantwortung werden an der falschen Stelle angezeigt.
- VS Mac: Git-Änderungen – Commit nicht verfügbar
Installationsprogramm
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
- Setup von VS 2017 für Mac funktioniert nicht, Benutzeroberfläche zeigt Rechtecke/Kästchen statt Text
.NET-Entwicklung
Entwicklung mit .NET 6
Sie können jetzt .NET 6 verwenden, um Anwendungen, Konsolen-Apps oder ASP.NET Core-Lösungen für das Web oder die Cloud zu erstellen. Visual Studio für Mac unterstützt die neueste Version von .NET 6 und ermöglicht weiterhin die Entwicklung mit .NET Core 3.1 und .NET 5. Erfahren Sie mehr über die Verbesserungen in .NET 6.
Behobene relevante Probleme
- Wir haben Mono auf 6.12.0.174 aktualisiert, um CVE-2020-8927 zu behandeln. Das Mono-Update erfordert außerdem ein Update von Xamarin.iOS auf 15.8.0.3, von Xamarin.Mac auf 8.8.0.3 und von Xamarin.Android auf 12.2.4.3.
- Die .NET SDKs wurden auf 6.0.203, 5.0.408 und 3.1.419 aktualisiert, wodurchCVE-2022-23267 und CVE-2022-29145 behoben wurden.
- Wir haben die .NET Core SDKs auf 6.0.200 und 5.0.405 aktualisiert und dabei CVE-2022-21986 behoben.
- Auf Apple Silicon-Computern (M1 oder Arm64) werden die .NET 5.0, 6.0 und .NET Core 3.1 x64 SDKs, die im November veröffentlicht wurden, von Visual Studio für Mac 17.0, Preview 3, nicht unterstützt. Dies liegt daran, dass die neuen x64 .NET SDKs in einem anderen Verzeichnis installiert werden und Visual Studio für Mac derzeit nur den ursprünglichen .NET SDK-Installationsspeicherort unterstützt, der jetzt nur vom Arm64 SDK verwendet wird.
- Wenn .NET 5.0, 6.0 oder .NET Core 3.1 x64 SDKs installiert sind, sollten diese entfernt und stattdessen das .NET 6 Arm64 SDK installiert werden.
- Erfahren Sie, wie Sie zu .NET 6 Arm64 SDK migrieren anhand dieser Anweisungen.
- Behobene gemeldete Probleme in der Entwicklercommunity
Azure-Entwicklung
- Azure Functions v4 für .NET 6 wird jetzt auf allen Plattformen unterstützt.
- Vollständige Unterstützung für Azure Functions auf x64 und Azure Functions v4 auf Arm64 hinzugefügt. Azure Functions v2 und v3 werden auf Arm64 nicht unterstützt Siehe „Bekannte Probleme“.
- Ein Problem wurde behoben, bei dem bei der Entwicklung eines Blazor Server-Projekts auf M1-Computern die Informationen der geöffneten Browserseite verloren gehen und die Benutzeroberfläche falsch angezeigt wird.
Behobene relevante Probleme
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
Unity – Spieleentwicklung
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
- Ein Problem wurde behoben, das dazu führte, dass ein Klick auf eine Zeilennummer in der Unity-Konsole nicht zur richtigen Zeile in Visual Studio führte.
- IntelliSense wurde beim Verwenden von Visual Studio für Mac mit Unity und CodeAnalysis beschädigt.
Xamarin – Mobile Entwicklung
- Unterstützung für Xcode 13.3 hinzugefügt.
Erstellen von herkömmlichen/monobasierten Xamarin-Projekten mit dem Mono-basierten MSBuild Ab Visual Studio für Mac 17.0, Preview 7, können Sie jetzt mithilfe des von .NET SDK bereitgestellten MSBuild oder mit dem MSBuild auf Mono erstellen.
Standardmäßig werden klassische Xamarin-Projekte und SDK-artige Projekte für .NET v4.x mithilfe von MSBuild auf Mono erstellt.
Wenn Ihre Projektmappe ein Projekt enthält, das das Erstellen mit MSBuild auf Mono erfordert, werden alle Projekte in dieser Projektmappe mit MSBuild auf Mono erstellt. Dies verhindert Buildfehler aufgrund von Unterschieden im Verhalten zwischen den beiden verschiedenen MSBuilds, wenn klassische Projekte auf SDK-artige Projekte verweisen.
Wenn Ihre Projektmappe keine Projekte enthält, die das Erstellen mit MSBuild auf Mono erfordern, wird sie mit dem vom .NET SDK bereitgestellten MSBuild erstellt.
Darüber hinaus können einige NuGet-Pakete MSBuild-Aufgaben enthalten, die MSBuild aus dem .NET SDK nicht unterstützen und das Erstellen mit MSBuild auf Mono erfordern können. Ein MSB4062-Fehler mit dem Text „Datei oder Assembly 'Microsoft.Build.Utilities.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' konnte nicht geladen werden“ ist ein Beispiel für die Verwendung einer inkompatiblen MSBuild-Aufgabe. Um dieses Problem zu umgehen, müssen Sie Ihre Projektmappe manuell so konfigurieren, dass sie mit MSBuild auf Mono erstellt:
- Navigieren Sie zu den Projektmappenoptionen, indem Sie im Projektmappenfenster mit der rechten Maustaste auf die Projektmappe klicken und „Option“ auswählen.
- Wählen Sie „Erstellen – Allgemein“ aus.
- Aktivieren Sie das Kontrollkästchen „Erstellen mit MSBuild auf Mono“, um mit MSBuild auf Mono zu erstellen.
Behobene relevante Probleme
Behobene wichtigste gemeldete Probleme aus der Entwicklercommunity
- Schnelle Assemblybereitstellung für Android-Projekte kann nicht deaktiviert werden
- Storyboards für XCode 13 können nicht bearbeitet werden, und die CPU-Nutzung beträgt 100 %
- Fehler beim Synchronisieren des E-Mail-Kontos mit dem Apple-Entwicklerportal
- HE0018: Die Simulatoranwendung konnte nicht gestartet werden.
- Anzeige von „Fehler beim Laden von SDK-Komponenteninformationen. Versuchen Sie es erneut“ schlägt fehl, wenn im Repository des Android-SDK-Managers die vollständige Liste (nicht unterstützt) ausgewählt wird.
- Android-SDK-Manager und -Geräte-Manager funktionieren nicht
- Android Designer-Fehler beim Rendern von Layout VS 2022
- VS für Mac 2022 Xamarin-Benutzeroberflächentestprojekt kann nicht geladen werden.
- VSMac 17.0: Android Designer kann content_main.xml nach der Erstellung von Android-Projekten nicht öffnen.
- Xamarin {iOS,Android}. CSharp.targets wurde in einer bereits vorhandenen Projektmappe falsch aufgelöst, was die NuGet-Wiederherstellung beschädigt.
- Kotlin 1.6-Metadaten werden manchmal nicht angewendet.
- Nativer Absturz (SIGABRT): monoeg_g_usleep: clock_nanosleep () hat „-1“ zurückgegeben.
- Debuggen des Builds mit „PublishTrimmed=true“ und „LinkMode=link“ schlägt fehl, wenn der lokale Mono.Android-Build aus der Quelle verwendet wird.
- Inkrementelle Releasebuilds stellen keine AOT für die App bereit.
- Ausführungsfehler beim erstmaligen Ausführen von Android
- „proguard.txt“ ist mehrmals im Projekt enthalten.
- Mac-Apps können nicht ausgeführt werden.
- Metadatendatei beim Erstellen der Xamarin.iOS-Lösung nicht gefunden.
- Android – TLS-Unterstützung nicht verfügbar.
- Xamarin.Mac-Anwendung kann nicht ausgeführt werden: „Ausführungsfehler“
- Paket konnte nicht installiert werden – Xamarin Profiler
Programmiersprachen
C# 10
- Record structs und
with
Ausdrücke für structs (record struct Point(int X, int Y);
,var newPoint = point with { X = 100 };
). - Globale using-Anweisungen: Durch
global using
-Anweisungen kann die Wiederholung der gleichenusing
-Anweisungen in vielen Dateien in Ihrem Programm vermieden werden. - Verbesserte definitive Zuweisung: Die Analyse von definitiver Zuweisung und NULL-Werten weist eine verbesserte Handhabung gängiger Muster wie
dictionary?.TryGetValue(key, out value) == true
auf. - Konstante interpolierte Zeichenfolgen: Interpolierte Zeichenfolgen, die aus Konstanten bestehen, sind selbst Konstanten.
- Erweiterte Eigenschaftenmuster: Eigenschaftenmuster ermöglichen den Zugriff auf geschachtelte Member (
if (e is MethodCallExpression { Method.Name: "MethodName" })
). - Versiegelter Datensatz ToString: Ein Datensatz kann einen Basisdatensatz mit einem versiegelten
ToString
erben. - Inkrementelle Quellgeneratoren: Verbessern Sie die Quellgenerierungserfahrung in großen Projekten, indem Sie die Quellgenerierungspipeline aufbrechen und Zwischenergebnisse zwischenspeichern.
- Gemischte Dekonstruktionen: Dekonstruktionszuweisungen und Dekonstruktionsdeklarationen können kombiniert werden (
(existingLocal, var declaredLocal) = expression
). - AsyncMethodBuilder auf Methodenebene: Der zum Kompilieren einer
async
-Methode verwendete AsyncMethodBuilder kann lokal außer Kraft gesetzt werden. - #line span-Anweisung: Ermöglicht Quellgeneratoren wie Razor eine detailgenaue Steuerung der Zeilenzuordnung mit
#line
-Anweisungen, die die Zielspanne angeben (#line (startLine, startChar) - (endLine, endChar) charOffset "fileName"
). - Lambdaverbesserungen: Attribute und Rückgabetypen sind für Lambdas zulässig. Lambdas und Methodengruppen haben einen natürlichen Delegattyp (
var f = short () => 1;
). - Interpolierte Zeichenfolgenhandler: Interpolierte Zeichenfolgenhandlertypen ermöglichen eine effiziente Formatierung interpolierter Zeichenfolgen in Zuweisungen und Aufrufen.
- Namespaces im Dateibereich: Dateien mit einem einzelnen Namespace benötigen keine zusätzlichen geschweiften Klammern oder Einzug (
namespace X.Y.Z;
). - Parameterlose Strukturkonstruktoren: Unterstützung von parameterlosen Konstruktoren und Instanzfeldinitialisierern für Strukturtypen.
- CallerArgumentExpression: Dieses Attribut ermöglicht das Erfassen der Ausdrücke, die als Zeichenfolgen an eine Methode übergeben werden.
Noch mehr Details sind unter C# language feature status (Status von C#-Sprachfeatures) und Breaking Changes verfügbar.
Releases von Visual Studio 2022 für Mac
- 12. Juli 2022 : Visual Studio 2022 für Mac, Version 17.0.6
- 28. Juni 2022: Visual Studio 2022 für Mac, Version 17.0.5
- 21. Juni 2022: Visual Studio 2022 für Mac, Version 17.0.4
- 14. Juni 2022: Visual Studio 2022 für Mac, Version 17.0.3
- 7. Juni 2022: Visual Studio 2022 für Mac, Version 17.0.2
- 31. Mai 2022: Visual Studio 2022 für Mac, Version 17.0.1
- 23. Mai 2022: Visual Studio 2022 für Mac, Version 17.0
Visual Studio 2022 für Mac v17.0.6 ![NewReleaseButton](media/buttons/new_button.svg)
17.0.6 Build 4 am 12. Juli 2022 veröffentlicht
Diese Version konzentriert sich auf die Behebung der folgenden Probleme in den v17.0.x-Versionen:
- Die .NET SDKs wurden auf 6.0.302 und 3.1.421 aktualisiert.
- Ein Problem wurde behoben, bei dem VS für Mac beim Starten des Updaters möglicherweise hängen blieb.
Visual Studio 2022 für Mac v17.0.5 ![NewReleaseButton](media/buttons/new_button.svg)
17.0.5 Build 6 veröffentlicht am 28. Juni 2022
Diese Version konzentriert sich auf die Behebung der folgenden Probleme in den v17.0.x-Versionen:
- Es wurde ein Problem behoben, bei dem der Git-Status mit dem Git-Index möglicherweise nicht mehr synchronisiert wurde.
- Behobene Probleme, die über die Entwicklercommunity gemeldet wurden:
Visual Studio 2022 für Mac v17.0.4
17.0.4 Build 23 veröffentlicht am 21. Juni 2022
Diese Version konzentriert sich auf die Behebung der folgenden Probleme in den v17.0.x-Versionen:
- Verschiedene Zuverlässigkeits- und Leistungsprobleme wurden behoben.
- Behobene Probleme, die über die Entwicklercommunity gemeldet wurden:
- Sicherheitshinweis für mono-Update auf 6.12.0.182:
- CVE-2022-30184 Sicherheitsanfälligkeit in .NET und Visual Studio bezüglich Veröffentlichung von Informationen In .NET 6.0 und .NET Core 3.1 gibt es ein Sicherheitsrisiko in NuGet, durch das eine Offenlegung von Anmeldeinformationen auftreten kann.
Visual Studio 2022 für Mac v17.0.3
17.0.3 Build 21 veröffentlicht am 14. Juni 2022
Diese Version konzentriert sich auf die Behebung der folgenden Probleme in den v17.0.x-Versionen:
- Ein Problem wurde behoben, bei dem XAML-Dateien nach dem Laden oder Erstellen eines Projekts anfangs leer angezeigt wurden.
- Die .NET SDKs wurden auf 6.0.301 und 3.1.420 aktualisiert.
- Sicherheitshinweis
- CVE-2022-24513 Sicherheitsrisiko durch Rechteerweiterungen Es besteht ein potenzielles Sicherheitsrisiko durch Rechteerweiterungen, wenn der Updater-Dienst für Microsoft Visual Studio lokale Konfigurationsdaten nicht ordnungsgemäß analysiert.
- CVE-2022-23267 .NET Core Denial of Service Vulnerability Eine Sicherheitsanfälligkeit ist in .NET 6.0, .NET 5.0 und .NET Core 3.1 vorhanden, bei der ein böswilliger Client einen Denial of Service über übermäßige Speicherzuweisungen über HttpClient verursachen kann.
- CVE-2022-30184 Sicherheitsanfälligkeit in .NET und Visual Studio bezüglich Veröffentlichung von Informationen In .NET 6.0 und .NET Core 3.1 gibt es ein Sicherheitsrisiko in NuGet, durch das eine Offenlegung von Anmeldeinformationen auftreten kann.
Visual Studio 2022 für Mac v17.0.2
17.0.2 Build 8 veröffentlicht am 7. Juni 2022
Diese Version konzentriert sich auf die Behebung der folgenden Probleme in den v17.0.x-Versionen:
Xamarin.Forms-Projekt kann ohne installiertes dotnet SDK nicht geladen werden.
Behobene Probleme, die über die Entwicklercommunity gemeldet wurden:
- Die gesamte IDE wird gelegentlich leer angezeigt.
- ResX-Generatoren ignorieren „Resource ID“, wenn die Designer.cs-Datei in VS 2022 generiert wird.
- xunit-Test „kann nicht geladen werden“ nach dem Upgrade auf die neueste Version.
- Der Testbereich schneidet Testnamen ab.
- Das Testfenster kann nicht alle Projekttests laden.
Visual Studio 2022 für Mac v17.0.1
17.0.1 Build 72 veröffentlicht am 31. Mai 2022
Diese Version konzentriert sich auf die Behebung der folgenden Probleme in der Version v17.0:
- Die Bezeichnung auf der Statusleiste für „Suche abgeschlossen“ ist falsch ausgerichtet.
- Beschreibung der Laufzeitkonfigurationen ist abgeschnitten
- Es wurden mehrere falsche deutsche Übersetzungen behoben.
- Voreinstellungen des Text-Editors wurden nicht lokalisiert.
- Konsolenprojekt mit mehreren Zielen führt „net472.exe“ mit dotnet aus.
- Android-Laufzeitkonfigurationen wählen nicht standardmäßig „Standard“ aus.
- Behobene Probleme, die über die Entwicklercommunity gemeldet wurden:
Feedback und Vorschläge
Wir freuen uns auf Ihr Feedback! Sie können Probleme über die Option Ein Problem melden in der IDE von Visual Studio für Mac melden. Sie können Ihr Feedback und ihre Vorschläge in der Developer Community verfolgen.
Bekannte Probleme
Im Folgenden werden alle bereits bekannten Probleme in Visual Studio 2022 für Mac 17.0 aufgeführt:
- Die .NET MAUI-Entwicklung wird in Visual Studio für Mac 17.0 nicht offiziell unterstützt. Die anfängliche Unterstützung wird in Visual Studio für Mac 17.3 enthalten sein, das sich derzeit in der Vorschauversion befindet.
- Das Aufgabenfenster (Aufgabenliste) ist nicht verfügbar.
- Das Toolkit für reguläre Ausdrücke ist nicht verfügbar.
- Xamarin.UITest wird noch nicht unterstützt.
- Bekanntes Problem beim Hinzufügen eines Apple-Kontos von der Registerkarte „Anwendungen“ im Info.plist-Editor.
- Nachdem das Konto hinzugefügt wurde, ist die Apple-ID nicht sichtbar, und die Bereitstellungsprofile werden erst synchronisiert, wenn die Datei „Info.plist“ geschlossen und erneut geöffnet wird.
- Die Synchronisierung von Apple Developer-Kontozertifikaten und -Bereitstellungsprofilen wird nicht unterstützt, außer für Konten, die für betriebsinterne Bereitstellungen verwendet werden sollen. Um dieses Problem zu umgehen, laden Sie Zertifikate und Bereitstellungsprofile direkt von der Apple Developer-Kontowebsite herunter.
- Auf ARM64-Prozessoren wird das dotnet-ef-Tool nur für Projekte unterstützt, die auf ASP.NET Core 6.0 und höher ausgerichtet sind.
- Geschützte NuGet-Paketquellen, die innerhalb der IDE hinzugefügt oder bearbeitet wurden, werden von der dotnet-CLI nicht abgerufen. Geschützte Quellen, die einen eigenen Anmeldeinformationsanbieter bereitstellen, z. B. Azure DevOps, werden weiterhin von der IDE und der CLI unterstützt. Die Paketwiederherstellung wird auch für das Klartextkennwörter in NuGet.config unterstützt.
- Die Eingabe chinesischer Zeichen in das integrierte Terminal kann dazu führen, dass die IDE abstürzt. Aus diesem Grund ist das integrierte Terminal für die Gebietsschemata „Chinesisch (vereinfacht)“ und „Chinesisch (traditionell)“ vorübergehend deaktiviert, bis dieses Problem behoben ist.
- Wenn Sie die integrierte Docker-Unterstützung verwenden und das Problem „Fehler vom Pipeprogramm 'docker': SCHWERWIEGENDER FEHLER: Dispatcher konnte nicht initialisiert werden, Fehler 80131534“ beim Debuggen auftritt, benennen Sie den Ordner ~/vsdbg um oder entfernen Sie ihn und versuchen Sie dann das Debuggen erneut.
- Xamarin- und Mono-Projekte können nicht erstellt werden, wenn kein .NET SDK installiert ist. Die Problemumgehung besteht darin, ein .NET SDK zu installieren.
- Gelegentlich führt die Verwendung der Schnellkorrekturaktionen zum Verschieben einer Klasse in eine Datei, was ein leeres Editorfenster nach sich zieht. Ein Speicherversuch zeigt keine Auswirkungen. Um das Problem zu umgehen, klicken Sie von einer Editor-Registerkarte auf eine andere und wieder zurück, um den Editor zu aktualisieren, woraufhin der Inhalt der Datei wieder angezeigt wird.