Microsoft frigiver Visual Studio 2022 med flere nye forbedringer

Ikon for læsetid 12 min. Læs


Læsere hjælper med at understøtte MSpoweruser. Vi får muligvis en kommission, hvis du køber via vores links. Værktøjstip-ikon

Læs vores oplysningsside for at finde ud af, hvordan du kan hjælpe MSPoweruser med at opretholde redaktionen Læs mere

Microsoft Visual Studio 2022 forhåndsvisning

Microsoft Visual Studio 2022 forhåndsvisning

Microsoft annoncerede i dag den generelle tilgængelighed af Visual Studio 2022. Denne GA-version af Visual Studio 2022 kommer med en go-live-licens til produktionsbrug.

Nøglefunktioner i Visual Studio 2022:

64-bit

  • devenv.exe er nu kun 64-bit

Azure Cloud Services

  • Azure Cloud Service (klassisk) og Azure Cloud Service (udvidet support)-projekter understøttes nu.

C + +

  • v143 build-værktøjerne er nu tilgængelige via Visual Studio-installationsprogrammet såvel som selvstændige byggeværktøjer.
  • Den nye Hot Reload-oplevelse er nu tilgængelig for native C++-applikationer, når de kører under debuggeren. Det understøtter både MSBuild- og CMake-projekter. For mere information se vores Hot Reload sektion nedenfor.
  • Du kan nu bygge og debugge native på WSL2 uden at etablere en SSH-forbindelse. Både CMake-projekter på tværs af platforme og MSBuild-baserede Linux-projekter understøttes.
  • Visual Studio understøtter nu buildPresets.targets mulighed i CMakePresets.json. Dette giver dig mulighed for at bygge et undersæt af mål i dit CMake-projekt.
  • Projektmenuen i CMake-projekter er blevet strømlinet og viser mulighederne for "Slet cache og omkonfigurer" og "Vis cache".
  • CMake-oversigtssider er blevet opdateret til at understøtte CMakePresets.json.
  • implementeret /scanDependencies flag til udlæsning af C++20-modulafhængigheder for CMake-projekter som beskrevet i P1689r3. Dette er et skridt i retning af støtte til at bygge modulbaserede projekter med CMake, og vi arbejder på at færdiggøre denne support i senere udgivelser.
  • Du kan nu fejlsøge processer, der kører på et fjernsystem fra Visual Studio med LLDB.
  • Vi har opgraderet versionen af ​​CMake, der blev leveret med Visual Studio, til version 3.21. Se den CMake 3.21 release notes for detaljer om, hvad der er tilgængeligt.
  • LLVM-værktøjer leveret med Visual Studio er blevet opgraderet til LLVM 12. Se LLVM release notes for yderligere oplysninger.
  • MSVC-værktøjssættet er nu standard til SHA-256 kildehashing i fejlretningsposter. Tidligere brugte værktøjssættet MD5 til kildehashing som standard.
  • Spiludviklingen med C++-arbejdsbelastning installerer nu den nyeste Unreal Engine med understøttelse af Visual Studio 2022.
  • Foretog forbedringer i C++ IntelliSense, da de leverede navigation og syntaksfremhævning for typer fra importerede moduler og header-enheder.
  • Forbedret C++ IntelliSense-ydeevne ved at optimere cachelagret headerbrug og symboldatabaseadgang, hvilket giver forbedrede indlæsningstider for at komme ind i din kode.
  • IntelliSense Code Linter til C++ er nu tændt som standard og giver øjeblikkelige forslag, mens du skriver, og fikser forslag til almindelige kodefejl.
  • Understøttelse af libfuzzer under kontakten -fsanitize=fuzzer. Se dokumentationen for flere detaljer.
  • Vi har forbedret nul pointer-dereferencedetektion i vores kodeanalyseværktøj.
  • Kodeanalyse håndhæver nu disse returneringsværdier for funktioner, der er kommenteret med _Check_return_ or _Must_inspect_result_ skal kontrolleres.
  • Tilføjet support til gsl::not_null til kodeanalyse.
  • Opdateret til NDK r21 LTS i C++ Mobile Development workload.
  • C++ AMP-headere er nu forældet. Inklusive i et C++-projekt vil generere byggefejl. For at dæmpe fejlene skal du definere _SILENCE_AMP_DEPRECATION_WARNINGS. Se venligst vores links til AMP-udfasning for flere detaljer.

Fejlfinding og diagnostik

  • Vedhæft forbedringer til procesdialog
  • Undtagelse hjælper forbedringer
  • Tving Kør for at klikke
  • Memory Dump diagnostisk analyse
  • Vi har udgivet en ny type breakpoint kaldet Dependent Breakpoint, som giver dig mulighed for at konfigurere et breakpoint til kun at blive aktiveret, hvis et andet breakpoint først rammes.
  • Vi har tilføjet flere opdateringer til Extrenal Sources noden, du kan nu se modulet under sub-noden "Moduler uden kilder" og indlæse symbolerne fra selve løsningsudforskeren.
  • Forbedringer af brudpunktsrende
  • Midlertidigt brudpunkt
  • Træk og slip Breakpoint
  • Eksterne kilder Node i Solution Explorer
  • Vedhæft forbedringer til procesdialog

Personalisering

  • Tilføjet farvefaner til lodrette og vandrette faner
  • Tilføjet Theme Pack og arbejdet med VS Code-temaforfattere for at lancere samling af brugerdefinerede temaer
  • bygget Tema konverter at konvertere VS Code-temaer til at fungere i Visual Studio 2022
  • Tilføjet mulighed for at synkronisere Visual Studio-tema med Windows-tema
  • Tilføjet nye dokumenthåndteringsfunktioner, herunder tilpasning af fanebredde, aktivt dokument med fed skrift og yderligere lukkeknap i docwell.

editor

  • Tilføjet underordsnavigation
  • Autosave er nu tilgængelig som en forhåndsvisningsfunktion
  • Multi-caret copy/paste oplevelse

udvidelsesmuligheder

  • Fjernede API'er fra Microsoft.VisualStudio.Language.Client-samlinger
  • VS SDK indeholder flere brydende ændringer, og Visual Studio 2019-udvidelser vil ikke fungere i 2022. Se VSSDK dokumentation for mere information.
  • VS SDK-referencesamlinger er ikke længere installeret på VSSDK\VisualStudioIntegration\Common\Assemblies folder. Hvis din build var afhængig af disse samlinger, skal du migrere dit projekt for at bruge NuGet-pakker i stedet. For offline scenarier:
    1. Hold et nuget-feed i organisationen, hvorfra nuget-pakkerne kan gendannes.
    2. Tjek i de binære filer.
  • Tilføjet ILanguageClient brydende ændringsrettelser

Cloud Services

  • Azurite vil blive brugt til lokal emulering af Azure Storage i stedet for den ældre og ikke længere aktivt udviklede Azure Storage Emulator.

Git Tooling

  • Multi-repo support under et preview-flag for enhver løsning, der spænder over forskellige arkiver (dvs. løsninger med projekter hostet i forskellige Git repositories)
  • Udgiv til Azure DevOps er nu fuldt understøttet i create git repository-oplevelsen
  • Statuslinjeforbedringer inklusive en ny evne til at se og åbne arkiver fra en tom VS , vise en optælling af uudrukne forpligtelser
  • Overløbsmenuen i Git Changes-vinduet er nu tilgængelig for lokale lagre med yderligere git-operationer
  • Unified Diff værktøjslinje, der indeholder antallet af tilføjede/slettede linjer og en synlig konfigurationsmuligheder
  • Commit detaljeforbedringer, herunder en mere lydhør og brugervenlig brugergrænseflade

Menuen Hjælp

  • I løbet af 17.0 har vi ombygget hjælpemenuen med Kom godt i gang materiale og nyttige tips/tricks.
  • Giver mere samarbejde med vores udviklingsteam ved at tilføje ting som f.eks. adgang til udviklerfællesskabet, Release Notes, Visual Studio-produktets køreplan og vores sociale mediesider.

Hot Reload Experience

  • Hot Reload er nu tilgængelig for .NET-udviklere gennem Visual Studio-debuggeren og uden debuggeren for mange .NET 6-applikationstyper
  • Hot Reload er nu tilgængelig for C++-udviklere, når de bruger Visual Studio Debugger

For flere detaljer se ovenstående link

IntelliCode

JavaScript / TypeScript

  • Vi har frigivet en ny JavaScript/TypeScript-projekttype, der bygger selvstændige JavaScript/TypeScript-projekter med yderligere værktøj. Du vil være i stand til at oprette Angular- og React-projekter i Visual Studio ved hjælp af rammeversionen installeret på din computer.
  • JavaScript og TypeScript-test er nu tilgængelig i Visual Studio Test Explorer
  • NPM GUI tilgængelig, så du kan nu downloade NPM-moduler på samme måde, som du downloader Nuget-pakker

.NET 6 SDK

  • .NET 6 SDK er inkluderet i Visual Studio 2022

.NET-produktivitet

  • Introducer parameter refactoring kan flytte en ny parameter fra metodeimplementeringen til dens kaldere.
  • Spor værdikilde til dataflowanalyse
  • Mulighed for at understrege variabler, der gentildeles
  • Tilføjet søgemulighed i dialogboksen Generer tilsidesættelser
  • Hurtig info om XML- tags now preserve whitespace and CDATA blocks
  • Vinduet Find alle referencer vil nu gruppere projekter med flere mål
  • Refaktorering for at fjerne gentagne typer i Visual Basic
  • Gå til Implementering vil ikke længere navigere til medlemmer med abstrakte erklæringer, der også er tilsidesat.
  • Synkroniser navnerum for at matche din mappestruktur fra Solution Explorer
  • Konfigurer baggrundskodeanalyse fra Solution Explorer
  • Nullable referencetyper er nu aktiveret som standard for nye .NET-projekter
  • C# 10.0 Fil-omfanget navneområde refactoring
  • Naviger til dekompilerede kilder er nu slået til som standard
  • Refaktorering for at foretrække nulkontrol fremfor typekontrol
  • XML-kommentarer vil nu automatisk generere en <exception> tag, når en metode eksplicit kaster undtagelser
  • Arvemargen er nu aktiveret som standard

Programmeringssprog

  • C # 10

Razor (ASP.NET Core) Editor

  • Reduceret UI-frysning og forbedret ydeevne ved opstart af løsning
  • Hurtigere semantisk farvelægning op til 2x i nogle løsninger
  • F7 (se kode) understøttelse i Razor filer
  • Uddragsunderstøttelse i barberbladsfiler, som fuldender en uddragssession med en enkelt fane i stedet for at trykke på tabulatortast
  • Bedre formatering i @code-blokke, når der er indlejrede HTML- og Razor-komponenter
  • Hot Reload-understøttelse i Razor-filer
  • Performanceforbedringer
  • Forbedringer af formatering og indrykning
  • Nye Razor editor farver
  • TagHelpers er nu farvelagt og har hurtig infoklassificeringssupport og færdiggørelsesværktøjstip
  • Fremhævning af vinkelstag og navigation til Razor-konstruktioner
  • Kommentarer har nu autofuldførelse, smart indrykning, automatisk inkludering af kommentarfortsættelser og blokering af kommentarnavigation

Fjerntest

  • Meget tidlig eksperimentel forhåndsvisning af aktivering af kørsel af test på fjernmiljøer såsom linux-containere, WSL og over SSH-forbindelser.

Understøttelse af testværktøjer

  • Vis i Test Explorer
  • Nye versioner af testplatformen, der starter med 17.0, vil ikke kunne køre generiske tests og bestilte tests. Disse specifikke funktioner leveres kun som en del af en tidlig version af MSTestv1 og er ikke inkluderet i MSTestv2. Vi ser meget lav brug af disse funktioner, og bestilte test anses nu for at være i modstrid med bedste testpraksis.
  • Nogle testoplevelser vil ikke være tilgængelige i 17.0, herunder oprettelse af nye TestSettings-filer og TestSettings-editoren. Testkørsler vil stadig kunne bruge TestSettings-filer, men TestSettings blev erstattet med RunSettings, og vi opfordrer brugerne til at migrere forbedret ydeevne og funktionalitet. Læs mere.
  • Web Load Test og Coded UI Test supportopdateringer. Kodede UI-tests og [Web Load Tests](Cloud-baseret belastningstest-tjeneste end of life | Azure DevOps Blog (microsoft.com) blev officielt udfaset i 2019. For at minimere indvirkningen på brugerne er der minimumsunderstøttelse af disse funktioner i Visual Studio 2022. opfordre brugere til at flytte fra Coded UI Test og Web Load Test.

Værktøjskassepopulation for UWP Extension SDK'er

  • UWP Extension SDK'er er nu forpligtet til eksplicit at angive de typer, som de ønsker skal vises i værktøjskassen ved at angive dem i deres SdkManifest.xml fil. Adfærden af ​​ældre versioner af Visual Studio er uændret; de vil ignorere listen over kontroller i manifestet og i stedet dynamisk opregne kontroltyperne i SDK'ens samlinger.

Trusted Locations

  • Vi har fornyet "Trust Settings"-funktionaliteten og kan nu vise en advarsel, når kode, der ikke er tillid til (f.eks. filer, projekter eller mapper) er ved at blive åbnet inde i IDE.
  • Tillidstjek udføres nu på løsningsmappeniveau
  • Brugeroprettede projekter føjes automatisk til listen over tillid
  • Brugere kan springe over tillidstjek på midlertidige placeringer oprettet af Visual Studio

Opdateringer, LTSC'er og implementering

  • Med Visual Studio 2022 vil der være flere samtidig understøttede servicebaselines, der frigives i efteråret og i foråret. For flere detaljer, se Visual Studio Release Rhythm dokumentation og Visual Studio 2022 Produktlivscyklus.
  • Det nye installationsprogram, der følger med Visual Studio 2022, har nu mulighed for at konfigurere, hvor Visual Studio-produktet skal få sine opdateringer fra. Dette giver dig mulighed for at vælge opdateringer fra en anden LTSC, eller, hvis du er i et administreret virksomhedsmiljø, kan du konfigurere klienten til at få sine opdateringer fra et layout. Muligheden for at konfigurere kilden til opdateringer er ny funktionalitet, der følger med Visual Studio Installer, og adfærden er således også gældende for downlevel-versioner af Visual Studio, såsom Visual Studio 2019. For yderligere information om konfiguration af opdateringskanalen, se det Opdater Visual Studio dokumentation. For yderligere oplysninger om at få dette til at fungere til netværkslayout henvises til Visual Studio Administratorvejledning.
  • IT-administratorer kan nu rapportere problemer uden at have Visual Studio installeret.

Brugergrænseflade

  • Standardikonerne er blevet opdateret og opdateret.

Webværktøjer

  • Siden Udgiv oversigt har nu handlinger til at starte/stoppe fjernfejlfinding og profilering under menuen '...' i øverste højre hjørne af sektionen 'Hosting'
  • Siden Forbundne tjenester har nu en handling til at starte Storage Explorer
  • "ASP.NET Core Empty"-skabelonen, der følger med .NET 6, bruger den nye 'minimale API'er' paradigme, som vi er begyndt at tilføje støtte til
  • Azurite vil blive brugt til lokal emulering af Azure Storage i stedet for den ældre og ikke længere aktivt udviklede Azure Storage Emulator.
  • Du kan tilføje godkendelse til din ASP.NET Core-applikation ved hjælp af Microsoft identitetsplatform gennem Connected Services-oplevelsen i Visual Studio.

WPF XAML Designer til .NET Framework

  • Den nuværende WPF XAML Designer til .NET Framework er erstattet med en ny WPF XAML Designer til .NET Framework, baseret på den samme arkitektur, som bruges til WPF XAML Designer for .NET (.NET Core). Visual Studio-oplevelsen vil se den samme ud, men tredjeparts kontrolleverandører skal understøtte den nye udvidelsesmodel siden den tidligere model baseret på .design.dll , Microsoft.Windows.Design.Extensibility er forældet. Hvis du allerede har oprettet en .designtools.dll udvidelse til .NET (.NET Core), vil den samme udvidelse fungere for den nye WPF XAML Designer til .NET Framework. Der henvises til migrationsdokument nedenfor for yderligere information om, hvordan du migrerer til den nye udvidelsesmodel.

XAML Hot Reload

  • XAML Hot Reload-ændringer – Mindre ændringer af værktøjslinjen og indstillinger i appen

XAML Live Preview

  • XAML Live Preview er nu tilgængelig for WPF, UWP, WinUI og Xamarin.Forms udviklere, der kører deres apps i enten Android Emulator eller som en UWP desktop app. Live Preview fanger en kørende applikationsbrugergrænseflade og bringer den ind i et forankret vindue i Visual Studio. Dette gør det nemmere at bruge XAML Hot Reload til at ændre appen, mens du ser disse ændringer inde i selve Visual Studio, uden at det er nødvendigt at gå frem og tilbage mellem den kørende app og Visual Studio, mens du foretager live XAML-kodeændringer.

For mere information klik på linket ovenfor.

XAML prøvedata

  • Design-Time Sample Data vil nu blive tilføjet som standard, når du opretter DataGrid, ListBox og ListView kontroller fra værktøjskassen i WPF-applikationer. For at deaktivere denne adfærd skal du fjerne markeringen af ​​"Tilføj automatisk eksempeldata ved elementoprettelse" under Værktøjer -> Indstillinger -> XAML Designer."
  • For at lære mere om prøvedata, besøg venligst Eksempel på datadokumentation.

Forbedret XAML bindingsoplevelse

  • Vi har lavet en række forbedringer for at gøre databinding hurtig og nem, såsom hurtig adgang til dialogboksen Databinding fra Property Inspector, mulighed for at indstille binding fra hurtige handlinger, mulighed for at vælge den egenskab der skal bindes til inde i databindingsdialogen .

For mere information klik på linket ovenfor.

Kilde: microsoft

Mere om emnerne: microsoft, Visual Studio 2022