Share via


2022LogoNote sulla versione di Visual Studio 2022 versione 17.8


Suggerimento

Guarda le registrazioni dell'evento di lancio di Visual Studio 2022 per scoprire le novità, ascoltare suggerimenti e consigli e scaricare swag digitale gratuito.

Developer Community | Visual Studio 2022 Roadmap | System Requirements | Compatibility | Distributable Code | Release History | License Terms | Blogs | Latest Release Issues | Whats New in Visual Studio Docs (Problemi noti della versione più recente)


Fare clic su un pulsante per scaricare la versione più recente di Visual Studio 2022. Per istruzioni sull'installazione e l'aggiornamento di Visual Studio 2022, vedere Aggiornare Visual Studio 2022 alla versione più recente. Vedere anche le istruzioni su come eseguire l'installazione offline.

Pulsante Scarica communityPulsante Scarica professionalPulsante Scarica organizzazione

Visitare il sito di Visual Studio per scaricare altri prodotti Visual Studio 2022.


Versioni di Visual Studio 2022 versione 17.8

Visual Studio 2022 Blog

Il blog di Visual Studio 2022 è la fonte ufficiale di informazioni dettagliate sul prodotto del team di progettazione di Visual Studio. È possibile trovare informazioni approfondite sulle versioni di Visual Studio 2022 nei post seguenti:


17.8.10 Visual Studio 2022 versione 17.8.10

Data di rilascio: 14 maggio 2024

Riepilogo delle novità di questa versione

  • I componenti del programma di installazione "Xamarin" e "Xamarin Profiler" sono stati contrassegnati come "Non supportati".
  • Correzione di queste strutture di dati non visualizzate correttamente in Visual Studio Debugger: Concurrency::concurrent_unordered_set, Concurrency::concurrent_unordered_multiset, Concurrency::concurrent_unordered_map, Concurrency::concurrent_unordered_multimap.
  • Correzione di un bug di convenzione di chiamata su arm64 in cui il chiamante e il chiamato non hanno accettato dove trovare parametri di tipo over-aligned by-value superiori a 16 byte.
  • Questa versione include anche un aggiornamento OpenSSL alla versione 3.2.1

Community degli sviluppatori

Avvisi di sicurezza risolti

  • CVE-2024-32002 Cloni ricorsivi nei file system senza distinzione tra maiuscole e minuscole che supportano collegamenti simbolici sono soggetti all'esecuzione di codice remoto.
  • CVE-2024-32004 Remote Code Execution while cloning special-crafted local repository
  • CVE-2024-30045 Vulnerabilità di esecuzione di codice remoto in .NET 7.0 e .NET 8.0 in cui si verifica un sovraccarico del buffer dello stack nella routine analisi doppia .NET.
  • CVE-2024-30046 È presente una vulnerabilità in Microsoft.AspNetCore.Server.Kestrel.Core.dll in cui può verificarsi un blocco non attivo con conseguente denial of service.

17.8.9 Visual Studio 2022 versione 17.8.9

Data di rilascio: 9 aprile 2024

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.9

  • Con questa correzione di bug, un client può ora usare il programma di avvio automatico in un layout e passare il parametro --noWeb per l'installazione in un computer client e assicurarsi che sia il programma di installazione che il prodotto Visual Studio vengano scaricati solo dal layout. In precedenza, a volte durante il processo di installazione, il programma di installazione non rispettava il parametro -noWeb e tentava di eseguire l'aggiornamento automatico dal Web.

Avvisi di sicurezza risolti

  • CVE-2024-21409 Esiste una vulnerabilità use-after-free in WPF che può comportare l'elevazione dei privilegi quando si visualizzano documenti non attendibili.
  • CVE-2024-28929 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28930 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver per Microsoft SQL Server.
  • CVE-2024-28931 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver per Microsoft SQL Server.
  • CVE-2024-28932 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28933 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28934 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28935 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28936 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28937 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28938 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28941 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver for Microsoft SQL Server.
  • CVE-2024-28943 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver per Microsoft SQL Server.
  • CVE-2024-29043 Questo aggiornamento risolve una vulnerablità di esecuzione remota del codice in Microsoft ODBC Driver per Microsoft SQL Server.

17.8.8 Visual Studio 2022 versione 17.8.8

Data di rilascio: 12 marzo 2024

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.8

  • Corregge i falsi negativi di Address Sanitizer relativi agli allocatori legacy di Window, nonché una race condition all'avvio a seconda del caricamento della dll di Address Sanitizer.
  • È stata apportata una correzione per impedire che un carico di memoria scalare nell'espansione inline delle funzioni std::round() venga modificato in un accesso vettoriale. Anche se l'accesso vettoriale non modifica il risultato del calcolo, è più lungo e può generare errori quando il carico scalare avrà esito positivo.
  • Correzione di un bug per cui libconcrt.lib usato quando il collegamento statico poteva contenere un'istruzione S edizione Standard 4.2 non valida nei sistemi X64 meno recenti.

Community degli sviluppatori

Avvisi di sicurezza risolti

  • CVE-2024-21392 Una vulnerabilità esiste in .NET in cui le richieste appositamente create possono causare una perdita di risorse, causando un attacco Denial of Service.
  • CVE-2024-26190 Esiste una vulnerabilità in MsQuic.dll che potrebbe comportare l'allocazione di piccoli blocchi di memoria fino a quando la connessione rimane attiva.
  • CVE-2023-27911 Questo avviso viene ripubblicato per indicare che Autodesk® FBX® SDK non è più supportato in Visual Studio 2022.

17.8.7 Visual Studio 2022 versione 17.8.7

Data di rilascio: 13 febbraio 2024

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.7

  • Visual Studio è in grado di eseguire il modulo con l'account SYSTEM.
  • Aggiornamenti .NET MAUI a 8.0.6 SR1.

Community degli sviluppatori

Avvisi di sicurezza risolti

  • CVE-2024-0057 Esiste una vulnerabilità di bypass delle funzionalità di sicurezza quando le applicazioni basate su Microsoft .NET Framework usano API di compilazione della catena X.509, ma non convalidano completamente il certificato X.509 a causa di un difetto della logica.
  • CVE-2024-21386 Esiste una vulnerabilità nelle applicazioni ASP.NET che usano SignalR in cui un client dannoso può causare un denial of service.
  • CVE-2024-21404 Vulnerabilità Denial of Service in .NET con supporto OpenSSL durante l'analisi dei certificati X509.

17.8.6 Visual Studio 2022 versione 17.8.6

Data di rilascio: 30 gennaio 2024

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.6

Community degli sviluppatori


17.8.5 Visual Studio 2022 versione 17.8.5

Data di rilascio: 17 gennaio 2024

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.5

  • Aggiunge correzioni di supporto e API Xcode 15.1. Per le note sulla versione completa, visitare la pagina delle versioni macios.
  • È stato risolto un problema a causa del quale alcuni clienti, dopo aver modificato il framework di destinazione per il progetto Razor, non erano in grado di visualizzare i componenti aggiunti successivamente.
  • Correzione di un arresto anomalo durante l'avvio della finestra di dialogo Debug > Connetti a processo.
  • Correzione di un arresto anomalo quando si modifica il modificatore di accesso nella finestra di progettazione Impostazioni.

Community degli sviluppatori


17.8.4 Visual Studio 2022 versione 17.8.4

Data di rilascio: 9 gennaio 2024

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.4

Community degli sviluppatori

Avvisi di sicurezza risolti

  • CVE-2024-20656 Esiste una vulnerabilità nel servizio VSStandardCollectorService150, in cui gli utenti malintenzionati locali possono inoltrare i privilegi negli host in cui è in esecuzione un'installazione interessata di Microsoft Visual Studio.
  • CVE-2023-32027 Questo avviso viene ripubblicato per risolvere una vulnerabilità microsoft ODBC Driver for SQL Server Remote Code Execution in Visual Studio.
  • CVE-2023-32025 Questo avviso viene ripubblicato per risolvere una vulnerabilità microsoft ODBC Driver for SQL Server Remote Code Execution in Visual Studio.
  • CVE-2023-32026 Questo avviso viene ripubblicato per risolvere una vulnerabilità microsoft ODBC Driver for SQL Server Remote Code Execution in Visual Studio.
  • CVE-2023-29356 Questo avviso viene ripubblicato per risolvere una vulnerabilità microsoft ODBC Driver for SQL Server Remote Code Execution in Visual Studio.
  • CVE-2023-32028 Questo avviso viene ripubblicato per risolvere una vulnerabilità di esecuzione remota del codice di Microsoft SQL OLE DB in Visual Studio.
  • CVE-2023-29349 Questo avviso viene ripubblicato per risolvere una vulnerabilità microsoft ODBC e OLE DB Remote Code Execution in Visual Studio.
  • CVE-2024-0057 Esiste una vulnerabilità di bypass delle funzionalità di sicurezza quando le applicazioni basate su Microsoft .NET Framework usano API di compilazione della catena X.509, ma non convalidano completamente il certificato X.509 a causa di un difetto della logica.
  • CVE-2024-0056 Una vulnerabilità esiste nel provider di dati SQL Microsoft.Data.SqlClient e System.Data.SqlClient in cui un utente malintenzionato può eseguire un attacco di intercettazione (talvolta chiamato attacco MITM o man-in-the-middle) tra il client SQL e il server SQL.
  • CVE-2024-21319 Microsoft rilascia questo avviso di sicurezza per fornire informazioni su una vulnerabilità nei modelli di progetto ASP.NET Core.

17.8.3 Visual Studio 2022 versione 17.8.3

Data di rilascio: 5 dicembre 2023

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.3

  • È stato risolto un problema per cui i progetti che usano file razor come file collegati o da progetti condivisi.

Community degli sviluppatori

Problemi noti

  • Gli utenti che dispongono di software di gestione dei privilegi da Delinea installato possono riscontrare problemi durante l'avvio di Visual Studio. Delinea è consapevole di questo problema e l'ha risolto. Contattarli tramite https://delinea.com/support per ottenere istruzioni su come risolvere il problema."

17.8.2 Visual Studio 2022 versione 17.8.2

Data di rilascio: 28 novembre 2023

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.2

  • È stato risolto un problema per cui, in determinate situazioni, una finestra del documento può rimanere bloccata che mostra un messaggio di caricamento.
  • In alcuni casi ,quando un progetto si trova in una cartella della soluzione, potrebbe essere visualizzato un errore durante il salvataggio del progetto. Il progetto viene salvato ma viene visualizzato un errore relativo all'impossibilità di eseguire il cast di un oggetto COM. Questo problema è stato risolto in modo che l'errore non venga più visualizzato.

Community degli sviluppatori


17.8.1 Visual Studio 2022 versione 17.8.1

Data di rilascio: 21 novembre 2023

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8.1

  • La versione aggiornata di IncrediBuild risolve un problema per cui la compilazione di progetti CMake usando i comandi di menu di compilazione standard reindirizzerebbe erroneamente la compilazione per l'uso di IncrediBuild per impostazione predefinita.

Community degli sviluppatori


17.8.0 Visual Studio 2022 versione 17.8.0

Data di rilascio: 14 novembre 2023

Riepilogo delle novità di questa versione di Visual Studio 2022 versione 17.8

Funzionalità di produttività

Caratteristiche Suggerimenti della community
GitHub Copilot
Mantenimento delle maiuscole e minuscole trova e sostituisci 🙏– 76 voti
Creare una richiesta pull 🙏– 293 voti
Riepilogo diff 🙏– 7 voti
Aumento del limite mulit-repo 🙏– 8 voti
Avatar di GitHub aggiunti alla finestra del repository Git
Supporto per unit test Linux remoti
Rendere statica la funzione globale
Ordinare le direttive #include
Ricerca e spostamento del codice
Teams Toolkit
Notifica di aggiornamento di Visual Studio

Sviluppo di giochi e C++

Caratteristiche Suggerimenti della community
Frammenti di motore unreal
Adattatore di test del motore Unreal
Visualizzazione funzioni di Build Insights 🙏– 141 voti
Creare hint per la funzione membro const
Hint per dimensioni e allineamento

Miglioramenti di F#

Caratteristiche Suggerimenti della community
F#

Debug e diagnostica

Caratteristiche Suggerimenti della community
Supporto per il debug di Enc/Ricaricamento rapido multipiattaforma
Eseguire il debug di servizio app Linux tramite Attach to Process
BenchmarkDotNet IDiagnosers
Supporto del tema avanzato per la finestra del punto di interruzione Impostazioni
Supporto contatore .NET per nuovi strumenti tramite l'API Contatori
Profilatura di test con VS Profiler
Strumento contatori .NET nello scenario di debug

Strumenti Razor

Caratteristiche Suggerimenti della community
Azione di codice per la generazione del metodo del gestore eventi
Colore di sfondo per codice C#

Sviluppo JavaScript e TypeScript

Caratteristiche Suggerimenti della community
Nuovi typeScript React e ASP.NET modelli combinati
launch.json supporto per apri cartella

SQL

Caratteristiche Suggerimenti della community
Aggiornamento di Microsoft.Data.SQLClient (MDS) dalla versione 3.0 alla versione 5.0 in SQL Server Data Tools

Test

Caratteristiche Suggerimenti della community
Nuovo IntelliTest ora in anteprima

Miglioramenti delle prestazioni

Caratteristiche Suggerimenti della community
Miglioramento della velocità di risposta razor/Blazor
Velocità avanzata F5
IntelliSense ottimizzato per C++ Unreal Engine
Accelerazione della compilazione per progetti .NET in stile non SDK

Gestione aziendale

Caratteristiche Suggerimenti della community
Passaggi di inizializzazione client semplificati per gli amministratori IT

Altri suggerimenti della community degli sviluppatori: Hai chiesto, abbiamo ascoltato!


Funzionalità di produttività

GitHub Copilot

Aumentare la produttività con Visual Studio è molto più semplice nella versione più recente di Visual Studio. Il completamento automatico di GitHub Copilot è ora disponibile come componente facoltativo, rendendo molto più semplice l'installazione insieme a una nuova installazione di Visual Studio o per consentire a un amministratore di creare un pacchetto con un aggiornamento. Per attivare le funzionalità è necessaria una sottoscrizione; la versione di valutazione gratuita è disponibile.

Dettagli del componente qui: ID dei carichi di lavoro e dei componenti di Visual Studio Enterprise | Microsoft Learn.

Mantenimento delle maiuscole e minuscole per Trova e Sostituisci

Quando si esegue Sostituisci, è ora possibile mantenere la combinazione di maiuscole e minuscole originali di ogni corrispondenza nel codice. Si noti che per ottenere maiuscole/minuscole in Pascal e Camel, la stringa Sostituisci deve essere maiuscole/minuscole in Pascal o maiuscole/minuscole in Camel.

Mantenimento delle maiuscole e minuscole per Trova e Sostituisci

Attivare o disattivare la conservazione delle maiuscole/minuscole nella finestra Sostituisci con Alt+Voppure facendo clic sull'opzione Mantieni maiuscole e minuscole.

Sostituzione veloce (Ctrl+H):

Sostituisci rapidamente mantenendo maiuscole/minuscole

Sostituisci nei file (Ctrl+Shift+H):

Sostituisci mantenendo maiuscole/minuscole nei file

Condividi le tue opinioni sull'esperienza di sostituzione mantenendo le maiuscole/minuscole in questo ticket della community degli sviluppatori: Mantenendo delle maiuscole/minuscole in Trova e Sostituisci tra più file.

Creare una richiesta pull in Visual Studio

Anziché usare il browser, è possibile creare la richiesta pull in Visual Studio. Usare l'editor Markdown con le descrizioni delle richieste pull per eseguire il rendering di intestazioni, elenchi puntati e altre sintassi Markdown facendo clic sul pulsante "Anteprima". Abilitare questa funzionalità tramite la richiesta pull delle funzionalità > di anteprima.

Usare Markdown e aggiungere revisori per la richiesta pull

È stata eseguito l'iterazione nelle versioni di anteprima per offrire una migliore gestione degli errori e un'esperienza migliore per i revisori. Segnalare l'esperienza richiesta pull qui.

Aggiungere revisori alla richiesta pull

È ora possibile aggiungere i revisori alle richieste pull in Visual Studio per Azure DevOps e GitHub.

Aggiungere revisori alla richiesta pull

Provare a eseguire questa operazione facendo clic sul collegamento "Crea una richiesta pull" visualizzato nel push oppure selezionando Git > GitHub o Azure DevOps > Nuova richiesta pull dal menu di primo livello. Passare quindi alla sezione Revisori e cercare i revisori da aggiungere. Prevediamo di continuare ad apportare aggiornamenti per migliorare l'esperienza di questa richiesta pull. Pertanto, invitiamo gli utenti a condividere il feedback su questa funzionalità qui e a partecipare alla discussione sul ticket di suggerimento nella Developer Community.

È stata anche aggiunta una migliore gestione degli errori e sono state migliorate le ricerche dei revisori. Segnalare l'esperienza richiesta pull qui.

Diff di riepilogo

Come continuazione degli sforzi per migliorare l'esperienza di differenze in Visual Studio, è stata implementata la visualizzazione Riepilogo nelle visualizzazioni diff e confronto. Questa nuova opzione consente di visualizzare solo le modifiche nel file con poche righe di contesto, apportando una revisione delle modifiche in un commit o il confronto tra due file molto più efficiente.

Diff di riepilogo

Facci sapere cosa pensi di questa funzionalità condividendo il tuo feedback qui e interagisci con noi sul ticket di suggerimento nella Developer Community.

Impostazione e aumento del limite di attivazione multi-repository

In alcuni flussi di lavoro è stato importante controllare se il multi-repository è stato attivato automaticamente. Con una nuova impostazione, è possibile concentrarsi su un singolo repository senza visualizzare l'interfaccia utente multi-repository. È stato inoltre aumentato il numero di repository che è possibile usare contemporaneamente a 25.

Impostazione multi-repository

Avatar di GitHub aggiunti alla finestra del repository Git

Vedere gli avatar di GitHub nel grafo multi-ramo nella finestra del repository Git.

Avatar di GitHub

Strumenti di GitHub Actions

È stato risolto il comportamento imprevisto del nuovo nodo GitHub Actions in Esplora soluzioni visualizzato per i repository non ospitati in GitHub.com. Il nuovo nodo dovrebbe ora essere visualizzato solo per i repository ospitati in GitHub.com. Successivamente, si sta lavorando alla possibilità di disattivare il nuovo nodo tramite Opzioni strumenti > .

Ricerca e spostamento del codice

Man mano che sono stati apportati miglioramenti delle prestazioni e dell'affidabilità nell'esperienza di ricerca all-in-one, è stata aggiunta anche una barra di stato che visualizza il conteggio di ogni tipo di risultato restituito.

Ricerca centralizzata

Microsoft Teams Toolkit

Nella versione più recente di Visual Studio 2022 versione 17.8 sono stati introdotti altri modelli di progetto per adattarsi a uno scenario aziendale più semplice e semplificare l'avvio. I nuovi modelli sono:

: modello Echo Bot che restituisce gli input dell'utente. - Un modello di annullamento del collegamento che è un tipo di app Estensioni messaggio in grado di eseguire il rendering dei collegamenti URL alle schede adattive. - Un modello di risultati di ricerca personalizzato che è un tipo di ricerca di app di estensioni messaggio che consente agli utenti di cercare direttamente e visualizzare i risultati dall'area di chat o dalla barra di ricerca. - Un modello Collect From Input and Process Data che è un tipo di azione dell'app Message Extensions che ottiene l'input degli utenti, esegue una logica e quindi invia i risultati agli utenti.

Riprogettiamo anche l'interfaccia utente per semplificare la selezione tra i modelli, aggiungiamo filtri e tag per diversi tipi di modelli.

Interfaccia utente dei modelli di Teams Toolkit

Notifica di aggiornamento di Visual Studio

Si è notato qualcosa di nuovo? Per Visual Studio 2022, è stata aggiunta una sovrimpressione all'icona della barra delle applicazioni di Visual Studio per sapere quando Visual Studio verrà aggiornato.
Quando è disponibile un aggiornamento ed è stata abilitata l'opzione "Aggiorna alla chiusura", verrà visualizzata l'icona. Dopo aver chiuso Visual Studio, verrà avviato immediatamente un aggiornamento e di conseguenza l'icona scomparirà. Per altre informazioni sull'aggiornamento alla chiusura, vedere Vs Update on Close (Aggiornamento di Visual Studio alla chiusura).

Aggiornamento

È stato inoltre risolto un problema a causa del quale il provider Git SCC si associa a cartelle non Git in modalità Apri cartella e impedisce il funzionamento di altri provider, ad esempio VisualSVN.


Sviluppo di giochi e C++

  • È stato aggiunto il supporto per consentire agli utenti di eseguire unit test Linux remoti da Esplora test in Visual Studio a qualsiasi computer Linux remoto a cui sono connessi tramite il Gestione connessioni

  • Aggiunta della finestra Dettagli problema per lo spostamento della diagnostica strutturata. Aprirla usando l'icona Dettagli presente in una voce dell'Elenco errori.

Diagnostica strutturata

  • È stato implementato il supporto per la libreria di thread C11 facoltativa. Sono inclusi thread, mutex, variabili di condizione e archiviazione locale del thread.
  • CMake versione 3.27 è ora disponibile con Visual Studio nel carico di lavoro Sviluppo desktop con C++.
  • È ora possibile passare alla visualizzazione Destinazioni CMake facendo clic con il pulsante destro del mouse in un punto qualsiasi del Esplora soluzioni e scegliendo Passa alla visualizzazione Destinazioni CMake.

Passare al pulsante Visualizzazione destinazioni CMake

  • È ora anche possibile accedere alla visualizzazione Destinazioni CMake selezionandola dall'elenco a discesa Visualizza.

Elenco a discesa Visualizzazione destinazioni CMake

  • La visualizzazione Destinazioni CMake è stata semplificata in modo che gli utenti non devono fare clic sulle cartelle senza eseguibili compilabili per raggiungere la destinazione desiderata.
  • È ora possibile visualizzare e modificare i file nel computer remoto in Visual Studio tramite la finestra Esplora file remota.

Esplora file remoto

  • È ora possibile rendere facilmente "statiche" le funzioni globali.
  • Quando si dispone di una funzione libera che non si trova in uno spazio dei nomi anonimo e manca una dichiarazione forward in un file di intestazione, si riceverà un suggerimento per contrassegnarlo come statico.

Rendere statica la funzione globale - esempio

  • È possibile modificare le impostazioni di questa funzionalità passando a Strumenti > Opzioni > Editor > di testo C/C++ > IntelliSense.

Impostazione per rendere statica la funzione globale

  • Aggiunta di nuovi frammenti di codice per il motore Unreal. Iniziare a digitare nella finestra dell'editor e i frammenti di codice UE inizieranno a essere visualizzati come elemento dell'elenco dei membri nei progetti UE. Premere TAB o immettere per creare il frammento di codice. I frammenti di codice supportati includono (UClass, UClassExported, UENUM, UFUNCTION, UINTERFACE, UINTERFAC edizione Enterprise xported, UPROPERTY, USTRUCT, USTRUCTExported, UELOG, SWidget, TActorRange, TObjectRange, WITH_EDITOR)

Frammenti di codice unreal Engine

  • È ora possibile creare, gestire ed eseguire i test di Unreal Engine dall'interno di Visual Studio. Per assicurarsi che l'adattatore di test del motore Unreal sia abilitato correttamente, verificare che "Unreal Engine Test Adapter" sia selezionato nel Programma di installazione di Visual Studio nel carico di lavoro "Sviluppo di giochi con C++". Dopo aver installato l'adattatore di test UE, i test di Unreal Engine verranno visualizzati automaticamente in Esplora test quando si apre Visual Studio. È necessaria la versione più recente del plug-in Unreal Engine dal marketplace UE o Da GitHub.

Esempio di Tafue

  • È stata aggiunta una "Visualizzazione funzioni" all'integrazione di Build Insights all'interno di Visual Studio. Il report di diagnostica generato da Build Insights mostrerà ora il tempo di generazione delle funzioni e ForceInlines.

Visualizzazione funzioni di Build Insights

  • Aggiunta di suggerimenti automatici per creare funzioni const membro se non devono modificare logicamente lo stato dell'oggetto. Passando il puntatore del mouse su una funzione membro e facendo clic sull'icona della lampadina, è possibile accedere rapidamente ai suggerimenti per contrassegnare la funzione come const.

Suggerimenti di lampadina per la funzione membro

  • È ora possibile passare il puntatore del mouse su una classe, uno struct, un'unione, un tipo di base o un'enumerazione per visualizzare le dimensioni e l'allineamento.

Dimensioni e allineamento

  • È ora possibile ordinare le direttive #include. Questa funzionalità è accessibile tramite l'elenco a discesa "direttive #include" all'interno del menu di scelta rapida. È anche possibile accedervi aggiungendo "Ordina direttive #include (C++)" nelle impostazioni di configurazione pulizia codice.

Voce di ordinamento include

  • È possibile modificare l'ordinamento per allinearsi alle preferenze passando a Strumenti > Opzioni > Editor > di testo C/C++ > Pulizia codice.

Impostazione di ordinamento include

  • /FU non è più supportato per le compilazioni C perché non è disponibile alcun /clr supporto per C.
  • /FU:asFriend è stato aggiunto per fornire parità con in-source #using <assembly> as_friend.

F#

  • È stata eseguita una revisione delle correzioni del codice, risolvendo numerosi bug (dettagli qui).
  • È stata introdotta una nuova correzione del codice che cambia uguale a (=) a due punti (:) nelle definizioni dei campi del record: Nuova correzione del codice F#
  • È stata implementata un'opzione per attivare la diagnostica per i file non aperti. Questa opzione è disattivata per impostazione predefinita per le considerazioni sulle prestazioni (dettagli qui).
  • Completamento automatico avanzato in vari scenari, tra cui:
    • Campi record anonimi: Completamento automatico migliorato nei campi record anonimi
    • Campi caso unione: Completamento automatico migliorato nei campi del caso di unione
    • Campi dei casi di unione discriminati: Completamento automatico migliorato nei campi dei casi di unione discriminati
    • Espressioni di valore case enumerazione: Completamento automatico migliorato nelle espressioni del valore del case enumerazione
  • Sono stati risolti i problemi relativi alla gestione anonima dei record in FSI (#15519).
  • Numeri di riga fuorvianti rettificati in FSI (#15384).
  • Descrizioni comando unificate per le proprietà automatiche: Descrizioni comando unificate per le proprietà automatiche
  • Hint per il nome del parametro migliorato nascondendoli per i nomi degli argomenti che corrispondono ai campi di unione discriminati: Hint per il nome dei parametri migliorati
  • Risoluzione dei problemi relativi alla navigazione alle definizioni di enumerazioni esterne e unioni discriminate (#15270).
  • Correzione della ricerca di riferimenti per gli operatori che iniziano con '>' (#15386).

Debug e diagnostica

Strumento Contatori .NET nello scenario di debug

È ora possibile accedere facilmente al contatore .NET tramite la finestra di diagnostica scegliendo la selezione ".NET Counters" dal menu a discesa "Seleziona strumento". Anche durante l'esecuzione di sessioni di debug, è possibile usare le funzionalità dei contatori .NET per supervisionare e valutare le metriche delle prestazioni cruciali.

Contatori .NET

Supporto per il debug di Enc/Ricaricamento rapido multipiattaforma

È stato aggiunto il supporto per gli scenari modifica e continuazione per F5 (con debugger) e CTRL-F5 (senza debugger) durante la diagnosi e il debug di app ospitate in contenitori Linux o in sottosistema Windows per Linux (WSL). Si noti che lo scenario di debug F5 si basa su .NET 8 RC1 e versioni successive.

Eseguire il debug di Servizi app Linux tramite Collega a processo

Microsoft è lieta di presentare una nuova funzionalità che consente il debug dei processi .NET nei servizi app Linux, tramite "Connetti a processo".
Questa funzionalità consente agli sviluppatori di eseguire facilmente il debug e la diagnosi dei problemi all'interno delle istanze di Servizi app di Azure Linux in esecuzione.

Collegarsi a un processo:

1.Selezionare Debug > Collega a processo (o premere CTRL+ALT+P) per aprire la finestra di dialogo Connetti a processo.

2.Controllare il tipo di Connessione ion. Deve essere "Servizio app di Microsoft Azure"

3.Impostare la destinazione Connessione ion sul nome del computer Linux.

4.Selezionare il processo disponibile corretto e fare clic su "Collega"

LinuxAppServices-Attach-to-Process

BenchmarkDotNet IDiagnosers

Visual Studio Profiler supporta ora BenchmarkDotNet IDiagnosers. Questi IDiagnosers svolgono un ruolo fondamentale nell'aggregazione di diagsessioni provenienti da scenari BenchmarkDotNet.
La scheda Benchmark offre una visualizzazione dei benchmark eseguiti. Offre anche la possibilità di scegliere con precisione un benchmark dalla corsia facendo doppio clic su una riga specifica.

IDiagnosers-swimlane

In alternativa, è possibile passare al file di origine tramite il menu di scelta rapida. I dati statistici vengono originati direttamente da BenchmarkDotNet e presentati in un formato di griglia strutturato.

IDiagnosers-gotosource

Supporto per il tema avanzato della finestra Impostazioni del punto di interruzione

È stato aggiunto un supporto per gli argomenti alla finestra Impostazione punto di interruzione, garantendo una coerenza uniforme tra i temi Chiaro, Scuro e Blu di Visual Studio.

impostazioni punto di interruzione

Supporto contatore .NET per nuovi strumenti tramite l'API Contatori

Lo strumento contatori .NET introduce ora l'integrazione dell'API Metri .NET, che include nuove opzioni di strumento, tra cui "Counter" e "ObservableCounter"

Il "Contatore" tiene traccia di un valore che cambia nel tempo, con gli aggiornamenti dei report del chiamante usando "Counter.Add". Al contrario, "ObservableCounter" è come il contatore, ma il chiamante si occupa di tenere traccia del valore totale. Al momento, lo strumento Contatori .NET segnala la frequenza di modifica nel totale.

È possibile trovare queste metriche nell'elenco dell'elenco delle metriche dei contatori .NET, offrendo una maggiore visibilità sulle prestazioni del sistema e sull'utilizzo delle risorse. Inoltre, stiamo pianificando attivamente di introdurre opzioni aggiuntive per strumenti in futuro per migliorare ulteriormente questa funzionalità.

17.8.p2. DotNetCounter-MetersApi.mp4

Testare la profilatura con l'hub di diagnostica

Siamo entusiasti di presentare una funzionalità di profilatura dei test aggiornata. Quando si fa clic con il pulsante destro del mouse sul test in Esplora test e si seleziona "Profilo", è ora possibile selezionare tra un set di strumenti disponibili, tra cui:

  • Utilizzo CPU
  • Utilizzo GPU
  • I/O file
  • .NET Async
  • Visualizzatore eventi

Selezionare gli strumenti da usare e fare clic su "Avvia" e verrà fornito un report.

Profilatura dei test


Strumenti Razor

Azione di codice per la generazione del metodo del gestore eventi

Se si usa un evento come @onclick o @onactivate per fare riferimento a un metodo C# che non è ancora stato definito, è possibile usare una nuova azione di codice Razor per generare automaticamente il metodo del gestore eventi. Questa azione di codice supporta anche argomenti di evento personalizzati.

Azione di codice per la generazione del metodo del gestore eventi

Colore di sfondo per codice C#

È ora possibile aggiungere un colore di sfondo per il codice C# all'interno dei file Razor. Disattivata per impostazione predefinita, abilitare questa opzione passando a Strumenti > Opzioni > Editor > di testo Razor > Avanzate e impostando Background per codice C# su True.

Colore di sfondo per codice C#


Sviluppo JavaScript e TypeScript

Nuovi typeScript React e ASP.NET modelli combinati

Quando inizialmente è stato rilasciato JavaScript/TypeScript con ASP.NET modelli combinati in questo post di blog, è stato ottenuto un feedback che gli utenti meritano una migliore esperienza di creazione del progetto React TypeScript. Questo nuovo TypeScript React con ASP.NET modello combinato ottiene la configurazione predefinita di tsconfig e SpaProxy.

React TypeScript e ASP.NET modelli combinati

launch.json supporto per apri cartella

Quando si sceglie di aprire la cartella nell'area di lavoro con launch.json nella directory .vscode per archiviare le impostazioni di avvio e debug, verrà ricreata da Visual Studio e inclusa nel menu a discesa per le destinazioni di debug proprio accanto al pulsante verde.

launch.json supporto per apri cartella


SQL

  • Aggiornamento di Microsoft.Data.SQLClient (MDS) dalla versione 3.0 alla versione 5.0 in SQL Server Data Tools (SSDT) Altre informazioni
  • Due nuovi campi vengono aggiunti alla finestra di dialogo Connessionefinestra di dialogo Connessione
  • Per impostazione predefinita, la proprietà Encrypt è impostata su true (abilitata) durante la connessione. Se un server non dispone di un certificato attendibile configurato, l'uso del certificato del server di attendibilità impostato su true potrebbe essere appropriato. Per altri dettagli, vedere la documentazione

Nuovo IntelliTest ora in anteprima

IntelliTest esplora il codice .NET per generare gruppi di test con code coverage elevato, basato sulla versione più recente del risolutore di problemi Z3. Quando si generano test, è possibile selezionare i test da conservare in un progetto di test che può fungere da suite di regressione. Quando il codice viene aggiornato, è possibile rieseguire IntelliTest per mantenere sincronizzati i test generati con il codice.

Le implementazioni precedenti di questa funzionalità edizione Enterprise supportano solo il codice destinato a .NET Framework e non supportano la configurazione x64. Questa versione aggiornata include quanto segue:

Ennable this feature through Tools > Manage Preview Features and selecting IntelliTest support for NetFx and Net6 using Z3 v4 (richiede il riavvio).

Abilitare Intellitest

Quindi nel codice fare clic con il pulsante destro del mouse all'interno di un metodo e selezionare IntelliTest (anteprima) e creare un progetto in cui è possibile salvare i test o Generare test per generare un set di test da rivedere e decidere quali conservare.

Attivare Intellitest nel codice


|

Miglioramenti apportati alle prestazioni

Miglioramento della velocità di risposta razor/Blazor

Le soluzioni che usano Razor e Blazor avranno una migliore velocità di risposta. Questo risultato è stato ottenuto riducendo significativamente le allocazioni di memoria durante le comunicazioni tra processi tra Visual Studio e Roslyn. Abbiamo testato la soluzione OrchardCore e i risultati sono impressionanti. Per aprire la soluzione e preparare Razor intelliSense, allocare circa 1,4 GB di memoria. Un minor numero di allocazioni dell'heap significa meno lavoro per il Garbage Collector, con un miglioramento della velocità di risposta.

Velocità avanzata F5

Sono stati notevolmente migliorate le prestazioni F5 per i progetti nativi ottimizzando la configurazione dei punti di interruzione. I miglioramenti apportati da un determinato progetto dipendono dal numero di file con punti di interruzione, dal numero di DLL con simboli e così via. Inoltre, è stato ottimizzato il processo di caricamento PDB per le applicazioni Windows, riducendo il tempo necessario per caricare un PDB una volta individuato. Nei test, queste ottimizzazioni hanno offerto un notevole miglioramento della velocità del 20% per i progetti unreal Editor.

Velocità avanzata F5

IntelliSense ottimizzato per C++ Unreal Engine

Sono stati apportati miglioramenti alla velocità con cui IntelliSense e la colorazione diventano disponibili dopo l'apertura di un file C++ aperto in precedenza. Lo stato di IntelliSense è sempre memorizzato nella cache per un file aperto. Nella versione 17.8 è stata ristrutturata la lettura dalla cache, in modo che le informazioni più critiche, inclusa la colorazione e l'evidenziazione dei riferimenti selezionati, vengano calcolate per prime. Questa ottimizzazione consente di aumentare la produttività prima.

IntellisenseCPlus

Accelerazione della compilazione per progetti .NET in stile non SDK

Visual Studio 17.8 estende l'accelerazione della compilazione alle applicazioni gestite destinate ai progetti di stile non SDK (ad esempio i progetti destinati a .NET Framework 4.8 o versione inferiore) con un impatto significativo sui tempi di compilazione. Per abilitare, impostare una proprietà del progetto msbuild come indicato di seguito:

<Project> 
    <PropertyGroup>  
        <AccelerateBuildsInVisualStudio>true</AccelerateBuildsInVisualStudio>
    </PropertyGroup>  
</Project>   

Questo si basa sul successo introdotto nella versione 17.5 per i progetti in stile SDK, riducendo significativamente i tempi di compilazione incrementali.

Nei test interni con soluzioni interne è stato rilevato un miglioramento del 50% nei tempi di compilazione incrementali. Tuttavia, il miglioramento effettivo dipende dallo stato dei progetti all'inizio della compilazione. In particolare, minore è il numero di progetti modificati rispetto ai progetti totali nella soluzione, maggiore è il miglioramento. L'effettivo livello di miglioramento dell'esperienza dipenderà dalle caratteristiche specifiche del progetto e dalle relative modifiche.

Gestione aziendale

Amministrazione istrator può ora inizializzare facilmente i computer client prima di delegare il controllo degli utenti standard per l'aggiornamento o la modifica dell'installazione di Visual Studio. È ora possibile installare a livello di codice solo il programma di installazione eseguendo "vs_enterprise.exe install --installerOnly".

Amministrazione istrators che sfruttano la soluzione di aggiornamento dell'amministratore per distribuire aggiornamenti mensili della sicurezza nell'organizzazione possono ora richiedere agli utenti di chiudere Visual Studio, che è una situazione comune che impedisce l'applicazione degli aggiornamenti degli amministratori. Per abilitare il prompt, configurare il nuovo criterio globale "Amministrazione istrator Aggiornamenti Notifications", disponibile sia nel catalogo delle impostazioni di Intune che nei modelli ADMX. Grazie alla community di amministratori che ha suggerito questa funzionalità.


Feedback e suggerimenti

I commenti degli utenti sono molto apprezzati. È possibile segnalare un problema o suggerire una funzionalitàIcona Commenti e suggerimenti usando l'icona Invia commenti e suggerimenti nell'angolo in alto a destra del programma di installazione o dell'IDE di Visual Studio o dall'invio > di commenti e suggerimenti. È possibile tenere traccia dei problemi usando Visual Studio Developer Community, in cui si aggiungono commenti o si trovano soluzioni. È anche possibile usufruire gratuitamente del supporto per l'installazione con Assistenza live chat.


Blog

Sfruttare i vantaggi delle informazioni dettagliate e delle raccomandazioni disponibili nel sito dei blog sugli strumenti di sviluppo per mantenersi aggiornati su tutte le nuove versioni con post di approfondimento su una vasta gamma di funzionalità.


In alto