Microsoft brengt Visual Studio 2022 uit met verschillende nieuwe verbeteringen

Pictogram voor leestijd 12 minuut. lezen


Lezers helpen MSpoweruser ondersteunen. We kunnen een commissie krijgen als u via onze links koopt. Tooltip-pictogram

Lees onze openbaarmakingspagina om erachter te komen hoe u MSPoweruser kunt helpen het redactieteam te ondersteunen Lees meer

Voorbeeld van Microsoft Visual Studio 2022

Voorbeeld van Microsoft Visual Studio 2022

Microsoft heeft vandaag de algemene beschikbaarheid van Visual Studio 2022 aangekondigd. Deze GA-versie van Visual Studio 2022 wordt geleverd met een go-live-licentie voor productiegebruik.

Belangrijkste functies in Visual Studio 2022:

64-bit

  • devenv.exe is nu alleen 64-bits

Azure-cloudservices

  • Azure Cloud Service (klassiek) en Azure Cloud Service (uitgebreide ondersteuning) projecten worden nu ondersteund.

C + +

  • De v143 build-tools zijn nu beschikbaar via het Visual Studio-installatieprogramma en de zelfstandige bouwtools.
  • De nieuwe Hot Reload-ervaring is nu beschikbaar voor native C++-applicaties wanneer ze onder de debugger worden uitgevoerd. Het ondersteunt zowel MSBuild- als CMake-projecten. Voor meer informatie zie onze Hot Reload-sectie hieronder.
  • U kunt nu native bouwen en debuggen op WSL2 zonder een SSH-verbinding tot stand te brengen. Zowel platformonafhankelijke CMake-projecten als op MSBuild gebaseerde Linux-projecten worden ondersteund.
  • Visual Studio ondersteunt nu de buildPresets.targets optie in CMakePresets.json. Hiermee kunt u een subset van doelen bouwen in uw CMake-project.
  • Het projectmenu in CMake-projecten is gestroomlijnd en biedt opties voor "Cache verwijderen en opnieuw configureren" en "Cache bekijken".
  • CMake-overzichtspagina's zijn bijgewerkt om CMakePresets.json te ondersteunen.
  • Geïmplementeerd /scanDependencies vlag voor het uitvoeren van C++20-moduleafhankelijkheden voor CMake-projecten zoals beschreven in P1689r3. Dit is een stap in de richting van ondersteuning voor het bouwen van op modules gebaseerde projecten met CMake en we werken eraan deze ondersteuning in latere releases te voltooien.
  • U kunt nu fouten opsporen in processen die op een extern systeem worden uitgevoerd vanuit Visual Studio met LLDB.
  • We hebben de versie van CMake die bij Visual Studio is geleverd, geüpgraded naar versie 3.21. Zie de CMake 3.21 release-opmerkingen voor details over wat er beschikbaar is.
  • LLVM-tools die bij Visual Studio worden geleverd, zijn geüpgraded naar LLVM 12. Zie de: LLVM release-opmerkingen voor meer info.
  • De MSVC-toolset is nu standaard SHA-256 bron hashing in foutopsporingsrecords. Voorheen gebruikte de toolset standaard MD5 voor bronhashing.
  • De game-ontwikkeling met C++-workload installeert nu de nieuwste Unreal Engine met ondersteuning voor Visual Studio 2022.
  • Verbeteringen aangebracht in C++ IntelliSense bij het bieden van navigatie en syntaxisaccentuering voor typen uit geïmporteerde modules en header-eenheden.
  • Verbeterde C++ IntelliSense-prestaties door het optimaliseren van het gebruik van de header in de cache en de toegang tot de symbooldatabase, wat zorgt voor verbeterde laadtijden om in uw code te komen.
  • De IntelliSense Code Linter voor C++ is nu standaard ingeschakeld en biedt onmiddellijke suggesties terwijl u typt en suggesties voor het oplossen van veelvoorkomende codefouten.
  • Ondersteuning voor libfuzzer onder de schakelaar -fsanitize=fuzzer. Zien de documentatie voor meer details.
  • We hebben de detectie van null-pointerdereferentie verbeterd in onze code-analysetools.
  • Code-analyse dwingt nu die retourwaarden af ​​van functies die zijn geannoteerd met _Check_return_ or _Must_inspect_result_ moet worden gecontroleerd.
  • Ondersteuning toegevoegd voor gsl::not_null tot code-analyse.
  • Bijgewerkt naar NDK r21 LTS in C++ Mobile Development-werklast.
  • C++ AMP-headers zijn nu verouderd. Met inbegrip van in een C++-project zal buildfouten genereren. Om de fouten tot zwijgen te brengen, definieert u _SILENCE_AMP_DEPRECATION_WARNINGS. Alsjeblieft zie onze AMP-beëindigingslinks voor meer details.

Foutopsporing en diagnose

  • Bijvoegen aan procesdialoogverbeteringen
  • Verbeteringen aan de uitzonderingshelper
  • Forceren om te klikken
  • Diagnostische analyse van geheugendump
  • We hebben een nieuw type breekpunt uitgebracht, Dependent Breakpoint genaamd, waarmee je een breekpunt kunt configureren om alleen te worden ingeschakeld als een ander breekpunt voor het eerst wordt geraakt.
  • We hebben meer updates toegevoegd aan het knooppunt Externe bronnen, u kunt nu de module zien onder het subknooppunt "Modules zonder bronnen" en de symbolen van de oplossingsverkenner zelf laden.
  • Verbeteringen aan de breekpuntgoot
  • Tijdelijk breekpunt
  • Slepen en neerzetten Breekpunt
  • Knooppunt externe bronnen in Solution Explorer
  • Bijvoegen aan procesdialoogverbeteringen

Personalisatie

  • Kleurtabs toegevoegd voor verticale en horizontale tabbladen
  • Themapakket toegevoegd en met VS Code-thema-auteurs gewerkt om te lanceren verzameling aangepaste thema's
  • Gebouwd Thema Converter om VS Code-thema's te converteren om te werken in Visual Studio 2022
  • Mogelijkheid toegevoegd om Visual Studio-thema te synchroniseren met Windows-thema
  • Nieuwe documentbeheermogelijkheden toegevoegd, waaronder het aanpassen van de tabbreedte, het vetgedrukte actieve document en een extra sluitknop in docwell.

editor

  • Subwoordnavigatie toegevoegd
  • Automatisch opslaan is nu beschikbaar als voorbeeldfunctie
  • Kopieer/plak-ervaring met meerdere carets

rekbaarheid

  • API's verwijderd uit Microsoft.VisualStudio.Language.Client-assemblies
  • VS SDK bevat verschillende belangrijke wijzigingen en Visual Studio 2019-extensies werken niet in 2022. Zie VSSDK-documentatie voor meer informatie.
  • VS SDK-referentieassemblages zijn niet langer geïnstalleerd op de VSSDK\VisualStudioIntegration\Common\Assemblies map. Als uw build op deze assemblages vertrouwde, migreer dan uw project om in plaats daarvan NuGet-pakketten te gebruiken. Voor offline scenario's:
    1. Houd een in-org nuget-feed bij waaruit u de nuget-pakketten kunt herstellen.
    2. Controleer de binaire bestanden.
  • IlanguageClient-doorbrekende wijzigingscorrecties toegevoegd

Cloud Services

  • Azuriet wordt gebruikt voor lokale emulatie van Azure Storage in plaats van de oudere en niet langer actief ontwikkelde Azure Storage Emulator.

Git-tooling

Het menu Help

  • Tijdens 17.0 hebben we het Help-menu vernieuwd met Aan de slag-materiaal en handige tips/trucs.
  • Biedt meer samenwerking met ons ontwikkelteam door zaken toe te voegen zoals toegang tot de Developer Community, Release Notes, de Visual Studio-productroutekaart en onze Social Media-pagina's.

Hot Reload-ervaring

  • Hot Reload is nu beschikbaar voor .NET-ontwikkelaars via de Visual Studio-foutopsporing en zonder de foutopsporing voor veel .NET 6-toepassingstypen
  • Hot Reload is nu beschikbaar voor C++-ontwikkelaars bij gebruik van Visual Studio Debugger

Voor meer details zie de bovenstaande link

IntelliCode

  • Voltooiingen van de hele regel voorspel uw volgende stuk C#-code op basis van uw huidige context en presenteert het als een inline-suggestie rechts van uw cursor.
  • Voltooiingen van de hele regel zijn nu compatibel met de nieuwste builds van JetBrains ReSharper. Houd er rekening mee dat het bijwerken van de regelaanvullingscontext op basis van de selectie van items in de lijst met aangepaste aanvullingen van ReSharpers niet wordt ondersteund - indien nodig kunnen ReSharper-gebruikers ervoor kiezen om in plaats daarvan de native IntelliSense van Visual Studio te gebruiken, zoals gedocumenteerd hier

JavaScript / TypeScript

  • We hebben een nieuw JavaScript/TypeScript-projecttype uitgebracht dat zelfstandige JavaScript/TypeScript-projecten bouwt met extra tooling. U kunt Angular- en React-projecten maken in Visual Studio met behulp van de frameworkversie die op uw computer is geïnstalleerd.
  • JavaScript- en TypeScript-testen zijn nu beschikbaar in de Visual Studio Test Explorer
  • NPM GUI beschikbaar, dus u kunt nu NPM-modules downloaden op dezelfde manier waarop u Nuget-pakketten downloadt

.NET 6-SDK

  • De .NET 6 SDK is opgenomen in Visual Studio 2022

.NET-productiviteit

  • Introductie van parameterrefactoring kan een nieuwe parameter van de methode-implementatie naar zijn aanroepers verplaatsen.
  • Waardebron bijhouden voor analyse van gegevensstromen
  • Optie om variabelen te onderstrepen die opnieuw zijn toegewezen
  • Zoekoptie toegevoegd in dialoogvenster Genereer overschrijvingen
  • Snelle info voor XML- tags now preserve whitespace and CDATA blocks
  • Vind alle referenties venster zal nu multi-target projecten groeperen
  • Refactoring om repetitieve typen in Visual Basic te verwijderen
  • Ga naar Implementatie navigeert niet langer naar leden met abstracte declaraties die ook worden overschreven.
  • Synchroniseer naamruimten zodat ze overeenkomen met uw mapstructuur vanuit Solution Explorer
  • Analyse van achtergrondcode configureren vanuit Solution Explorer
  • Nullable-referentietypen zijn nu standaard ingeschakeld voor nieuwe .NET-projecten
  • C# 10.0 Refactoring van naamruimte in bestandsbereik
  • Navigeren naar gedecompileerde bronnen is nu standaard ingeschakeld
  • Refactoring om null-controle te verkiezen boven typecontrole
  • XML-opmerkingen genereren nu automatisch een <exception> tag wanneer een methode expliciet uitzonderingen genereert
  • Overervingsmarge is nu standaard ingeschakeld

Programmeertalen

  • C # 10

Razor (ASP.NET Core)-editor

  • Verminderde UI bevriest en verbeterde prestaties bij het opstarten van de oplossing
  • Snellere semantische inkleuring tot 2x in sommige oplossingen
  • F7 (bekijk code) ondersteuning in Razor-bestanden
  • Ondersteuning van fragmenten in scheermesbestanden die een fragmentsessie voltooien met een enkele tab in plaats van op tab-tab te drukken
  • Betere opmaak in @code-blokken wanneer er geneste HTML en Razor Components zijn
  • Hot Reload-ondersteuning in Razor-bestanden
  • Performance verbeteringen
  • Verbeteringen voor opmaak en inspringen
  • Nieuwe Razor-editorkleuren
  • TagHelpers zijn nu gekleurd en hebben snelle info classificatie ondersteuning en voltooiing tooltips
  • Hoeksteun markeren en navigeren voor Razor-constructies
  • Opmerkingen kunnen nu automatisch worden aangevuld, slim inspringen, automatisch toevoegen van voortzettingen van opmerkingen en navigatie van opmerkingen blokkeren

Testen op afstand

  • Zeer vroege experimentele preview van het mogelijk maken van tests op externe omgevingen zoals linux-containers, WSL en via SSH-verbindingen.

Ondersteuning voor testtools

  • Weergeven in Testverkenner
  • Nieuwe versies van het testplatform vanaf 17.0 kunnen geen generieke tests en geordende tests uitvoeren. Deze specifieke functies worden alleen geleverd als onderdeel van een vroege versie van MSTestv1 en zijn niet opgenomen in MSTestv2. We zien een zeer laag gebruik van deze functies en bestelde tests worden nu beschouwd als in strijd met de beste testpraktijken.
  • Sommige testervaringen zijn niet beschikbaar in 17.0, inclusief het maken van nieuwe TestSettings-bestanden en de TestSettings-editor. Testruns kunnen nog steeds TestSettings-bestanden gebruiken, maar TestSettings is vervangen door RunSettings en we moedigen gebruikers aan om verbeterde prestaties en functionaliteit te migreren. Lees meer.
  • Web Load Test en Coded UI Test ondersteunen updates. Gecodeerde UI-tests en [Web Load Tests](einde levensduur van de service voor het testen van de cloud | Azure DevOps Blog (microsoft.com) zijn officieel beëindigd in 2019. Om de impact voor gebruikers te minimaliseren, is er minimale ondersteuning voor deze functies in Visual Studio 2022. moedig gebruikers aan om Coded UI Test en Web Load Test te verlaten.

Toolbox-populatie voor UWP Extension SDK's

  • UWP Extension SDK's zijn nu verplicht om de typen die ze in de Toolbox willen weergeven expliciet aan te geven door ze op te nemen in hun SdkManifest.xml-bestand. Het gedrag van oudere versies van Visual Studio is ongewijzigd; ze negeren de lijst met besturingselementen in het manifest en sommen in plaats daarvan dynamisch de besturingstypen op in de SDK-assemblies.

Vertrouwde locaties

  • We hebben de functionaliteit "Vertrouwensinstellingen" vernieuwd en kunnen nu een waarschuwing weergeven wanneer niet-vertrouwde code (bijv. bestanden, projecten of mappen) op het punt staat te worden geopend in de IDE.
  • Vertrouwenscontroles worden nu uitgevoerd op het niveau van de oplossingsmap
  • Door gebruikers gemaakte projecten worden automatisch toegevoegd aan de vertrouwde lijst
  • Gebruikers kunnen vertrouwenscontroles overslaan op tijdelijke locaties die zijn gemaakt door Visual Studio

Updates, LTSC's en implementatie

  • Met Visual Studio 2022 zullen er meerdere gelijktijdig ondersteunde servicebaselines zijn die in de herfst en in de lente worden uitgebracht. Voor meer details, zie: Visual Studio Release Rhythm-documentatie en Productlevenscyclus van Visual Studio 2022.
  • Het nieuwe installatieprogramma dat bij Visual Studio 2022 wordt geleverd, heeft nu de mogelijkheid om te configureren waar het Visual Studio-product de updates vandaan moet halen. Hierdoor kunt u updates van een andere LTSC kiezen of, als u zich in een beheerde bedrijfsomgeving bevindt, de client configureren om de updates van een lay-out te krijgen. De mogelijkheid om de bron voor updates te configureren is een nieuwe functionaliteit die wordt geleverd met de Visual Studio Installer, en daarom is het gedrag ook van toepassing op downlevel-versies van Visual Studio, zoals Visual Studio 2019. Voor aanvullende informatie over het configureren van het updatekanaal, raadpleegt u de Visual Studio bijwerken documentatie. Voor meer informatie over hoe dit werkt voor netwerklay-outs, raadpleeg de Handleiding voor Visual Studio-beheerders.
  • IT-beheerders kunnen nu problemen melden zonder dat Visual Studio is geïnstalleerd.

User Interface

  • De standaardpictogrammen zijn bijgewerkt en vernieuwd.

Web Tools

  • De pagina Samenvatting publiceren heeft nu acties om foutopsporing en profilering op afstand te starten/stoppen onder het menu '...' in de rechterbovenhoek van het gedeelte 'Hosting'
  • De pagina Verbonden services heeft nu een actie om Storage Explorer te starten
  • De "ASP.NET Core Empty"-sjabloon die bij .NET 6 wordt geleverd, gebruikt de nieuwe 'minimale API's' paradigma waarvoor we ondersteuning beginnen toe te voegen
  • Azuriet wordt gebruikt voor lokale emulatie van Azure Storage in plaats van de oudere en niet langer actief ontwikkelde Azure Storage Emulator.
  • U kunt authenticatie toevoegen aan uw ASP.NET Core-toepassing met: Microsoft identiteitsplatform via de Connected Services-ervaring in Visual Studio.

WPF XAML Designer voor .NET Framework

  • De huidige WPF XAML Designer voor .NET Framework is vervangen door een nieuwe WPF XAML Designer voor .NET Framework, gebaseerd op dezelfde architectuur die wordt gebruikt voor de WPF XAML Designer voor .NET (.NET Core). De Visual Studio-ervaring zal er hetzelfde uitzien, maar externe leveranciers van besturingselementen moeten het nieuwe uitbreidbaarheidsmodel ondersteunen sinds het vorige model op basis van .design.dll en Microsoft.Windows.Design.Extensibility wordt afgeraden. Als je al een . hebt gemaakt .designtools.dll extensie voor .NET (.NET Core), werkt diezelfde extensie ook voor de nieuwe WPF XAML Designer voor .NET Framework. Raadpleeg de migratiedocument hieronder voor meer informatie over hoe u kunt migreren naar het nieuwe uitbreidbaarheidsmodel.

XAML heet opnieuw laden

  • XAML Hot Reload-wijzigingen - Kleine wijzigingen in de in-app-werkbalk en instellingen

XAML Live-voorbeeld

  • XAML Live Preview is nu beschikbaar voor WPF-, UWP-, WinUI- en Xamarin.Forms-ontwikkelaars die hun apps uitvoeren in Android Emulator of als een UWP-desktopapp. Live Preview legt de gebruikersinterface van een actieve toepassing vast en brengt deze naar een vastgezet venster in Visual Studio. Dit maakt het gemakkelijker om XAML Hot Reload te gebruiken om de app te wijzigen terwijl u die wijzigingen in Visual Studio zelf ziet, zonder dat u heen en weer hoeft te schakelen tussen de actieve app en Visual Studio terwijl u live XAML-codewijzigingen aanbrengt.

Voor meer informatie klik op bovenstaande link.

XAML-voorbeeldgegevens

  • Ontwerptijdvoorbeeldgegevens worden nu standaard toegevoegd bij het maken van DataGrid-, ListBox- en ListView-besturingselementen vanuit de toolbox in WPF-toepassingen. Om dit gedrag uit te schakelen, verwijdert u het vinkje bij 'Automatisch voorbeeldgegevens toevoegen bij het maken van elementen' onder Extra -> Opties -> XAML Designer.”
  • Ga voor meer informatie over voorbeeldgegevens naar de: Voorbeeldgegevensdocumentatie.

Verbeterde XAML-bindingservaring

  • We hebben een aantal verbeteringen aangebracht om het binden van gegevens snel en gemakkelijk te maken, zoals snelle toegang tot het dialoogvenster Gegevensbinding vanuit Eigenschappencontrole, mogelijkheid om binding in te stellen vanuit Snelle acties, mogelijkheid om de eigenschap te kiezen om aan te binden in het Gegevensbindingsdialoogvenster .

Voor meer informatie klik op bovenstaande link.

Bron: Microsoft

Meer over de onderwerpen: microsoft, Visual Studio 2022