Visual Studio Icon Note sulla versione di Visual Studio 2019 versione 16.7Visual Studio 2019 version 16.7 Release Notes



Developer Community | Requisiti di sistema | Compatibilità | Codice distribuibile | Condizioni di licenza | Blog | Novità di Visual Studio DocsDeveloper Community | System Requirements | Compatibility | Distributable Code | License Terms | Blogs | Whats New in Visual Studio Docs


Fare clic su un pulsante per scaricare la versione più recente di Visual Studio 2019.Click a button to download the latest version of Visual Studio 2019. Per istruzioni sull'installazione e sull'aggiornamento di Visual Studio 2019, vedere Aggiornare Visual Studio 2019 alla versione più recente.For instructions on installing and updating Visual Studio 2019, see the Update Visual Studio 2019 to the most recent release. Vedere anche le istruzioni su come eseguire l'installazione offline.Also, see instructions on how to install offline.

Community Download Button Professional Download Button Enterprise Download Button


Novità in Visual Studio 2019 versione 16.7What's New in Visual Studio 2019 version 16.7

Intervallo di tempo del supportoSupport Timeframe

Visual Studio 2019 versione 16.7 è la terza baseline di manutenzione supportata per Visual Studio 2019.Visual Studio 2019 version 16.7 is the third supported servicing baseline for Visual Studio 2019. I clienti Enterprise e Professional che richiedono un ambiente di sviluppo stabile e protetto a lungo termine sono invitati a standardizzare l'ambiente su questa versione.Enterprise and Professional customers needing to adopt a long term stable and secure development environment are encouraged to standardize on this version. Come illustrato più in dettaglio nel ciclo di vita e nei criteri di supporto,la versione 16.7 sarà supportata con correzioni e aggiornamenti della sicurezza fino ad aprile 2022.As explained in more detail in our lifecycle and support policy, version 16.7 will be supported with fixes and security updates through April 2022. Aprile 2022 è un anno dopo il rilascio di Visual Studio 2019 versione 16.9, che è stata dichiarata come la quarta baseline di manutenzione.April 2022 is one year after the release of Visual Studio 2019 version 16.9, which was declared as the fourth servicing baseline.

Ora che è disponibile la versione 16.7, la versione 16.4 (che era l'ultima baseline di manutenzione) sarà supportata per altri 12 mesi e non sarà più supportata a partire da ottobre 2021.In addition, now that version 16.7 is available, version 16.4, which was the last servicing baseline, will be supported for an additional 12 months and will go out of support in October 2021. Si noti anche che le versioni 16.5 e 16.6 non sono più supportate.Note as well that versions 16.5 and 16.6 are no longer under support either. Queste versioni intermedie hanno ricevuto correzioni di manutenzione solo fino al rilascio dell'aggiornamento secondario successivo.These intermediary releases received servicing fixes only until the next minor update released.

È possibile ottenere la versione sicura più recente di Visual Studio 2019 (la versione 16.7) nella sezione download di my.visualstudio.com.You can acquire the latest most secure version of Visual Studio 2019 version 16.7 in the downloads section of my.visualstudio.com.   Per altre informazioni sulle baseline supportate di Visual Studio, vedere i criteri di supporto per Visual Studio 2019.For more information about Visual Studio supported baselines, please review the support policy for Visual Studio 2019.

Rilasci di Visual Studio 2019 versione 16.7Visual Studio 2019 version 16.7 Releases

Note sulla versione archiviate di Visual Studio 2019Visual Studio 2019 Archived Release Notes

Blog di Visual Studio 2019Visual Studio 2019 Blog

Il blog di Visual Studio 2019 è la fonte ufficiale di informazioni dettagliate sul prodotto da parte del team Visual Studio Engineering.The Visual Studio 2019 Blog is the official source of product insight from the Visual Studio Engineering Team. È possibile trovare informazioni approfondite sulle versioni di Visual Studio 2019 nei post seguenti:You can find in-depth information about the Visual Studio 2019 releases in the following posts:


Vedere questo elenco completo di tutti Developer Community elementi presi in Visual Studio 2019 versione 16.7See this full list of all Developer Community items taken in Visual Studio 2019 version 16.7

Release Notes Icon Visual Studio 2019 versione 16.7.15Visual Studio 2019 version 16.7.15 New release icon

Data di rilascio: 11 maggio 2021released May 11, 2021

In questa versione di Visual Studio 2019 versione 16.7.15In this Release of Visual Studio 2019 version 16.7.15

  • È stato risolto un problema che causava l'esito negativo degli aggiornamenti quando un amministratore crea un nuovo layout di Visual Studio per la distribuzione degli aggiornamenti.Fixed an issue causing updates to fail when an administrator creates a new layout of Visual Studio for deploying updates. L'aggiornamento del computer client avrà esito negativo perché il layout ha spostato le posizioni.The client machine update will fail since the layout has moved locations.

Avviso di sicurezzaSecurity Advisory Notice

CVE-2021-27068 RCE possibile quando si piantano python.exe nella cartella nidificata CVE-2021-27068 RCE possible when planting python.exe in nested folder

Una vulnerabilità di esecuzione di codice in modalità remota esiste quando si apre un'area di lavoro con codice Python e tale area di lavoro contiene un python.exe in una sottocartella di script.A remote code execution vulnerability exists when opening a workspace with python code and that workspace contains a python.exe in a scripts subfolder.

CVE-2021-31204 Vulnerabilità dell'elevazione dei privilegi di .NET Core CVE-2021-31204 .NET Core Elevation of Privilege Vulnerability

Una vulnerabilità di elevazione dei privilegi esiste in .NET 5.0 e .NET Core 3.1 quando un utente esegue un'applicazione a file singolo nei sistemi operativi basati su Linux o macOS.An elevation of privilege vulnerability exists in .NET 5.0 and .NET Core 3.1 when a user runs a single file application on Operating Systems based on Linux or macOS.


Release Notes Icon Visual Studio 2019 versione 16.7.14Visual Studio 2019 version 16.7.14

Data di rilascio: 13 aprile 2021released April 13, 2021

In questa versione di Visual Studio 2019 versione 16.7.14In this Release of Visual Studio 2019 version 16.7.14

  • Rimozione errata del codice attivo da parte di OptimizerOptimizer wrongly removing active code
  • NuGet segnala l'origine del pacchetto e l'hash del contenuto del pacchetto durante il ripristino dei pacchetti al livello di dettaglio di output normaleNuGet will report package source and package content hash when restoring packages at normal output verbosity
  • NuGet salverà l'origine del pacchetto nel file .nupkg.metadata del pacchetto nella cartella dei pacchetti globali.NuGet will save package source in package's .nupkg.metadata file in the global packages folder. I pacchetti esistenti nella cartella dei pacchetti globali non otterrà queste informazioni aggiuntive.Existing packages in the global packages folder will not get this additional information. La cartella dei pacchetti globali può essere cancellata per raccogliere informazioni sull'origine dei pacchetti per tutti i pacchetti.Your global packages folder can be cleared to collect package source information for all packages.

Avviso di sicurezzaSecurity Advisory Notice

CVE-2021-27064 Programma di installazione di Visual Studio vulnerabilità di elevazione dei privilegi CVE-2021-27064 Visual Studio Installer Elevation of Privilege Vulnerability

Esiste una vulnerabilità di esecuzione remota del codice quando Visual Studio programma di installazione esegue il client di feedback in uno stato con privilegi elevati.A remote code execution vulnerability exists when the Visual Studio installer executes the feedback client in an elevated state.

CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322 Vulnerabilità di elevazione dei privilegi del servizio dell'agente di raccolta standard dell'hub di diagnostica CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322 Diagnostics Hub Standard Collector Service Elevation of Privilege Vulnerability

Esiste una vulnerabilità di elevazione dei privilegi quando l'agente di raccolta standard dell'hub di diagnostica gestisce in modo non corretto le operazioni sui dati.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector incorrectly handles data operations.


Release Notes Icon Visual Studio 2019 versione 16.7.13Visual Studio 2019 version 16.7.13

Data di rilascio: 09 marzo 2021released March 09, 2021

In questa versione di Visual Studio 2019 versione 16.7.13In this Release of Visual Studio 2019 version 16.7.13

Avviso di sicurezzaSecurity Advisory Notice

CVE-2021-21300 Git per Visual Studio vulnerabilità di esecuzione remota del codice CVE-2021-21300 Git for Visual Studio Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione remota del codice quando Visual Studio clona un repository dannoso.A remote code execution vulnerability exists when Visual Studio clones a malicious repository.

CVE-2021-26701 Vulnerabilità di esecuzione remota del codice .NET Core CVE-2021-26701 .NET Core Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione remota del codice in .NET 5 e .NET Core a causa della modalità di esecuzione della codifica del testo.A remote code execution vulnerability exists in .NET 5 and .NET Core due to how text encoding is performed.


Release Notes Icon Visual Studio 2019 versione 16.7.12Visual Studio 2019 version 16.7.12

Data di rilascio: 09 febbraio 2021released February 09, 2021

In questa versione di Visual Studio 2019 versione 16.7.12In this Release of Visual Studio 2019 version 16.7.12


Release Notes Icon Visual Studio 2019 versione 16.7.11Visual Studio 2019 version 16.7.11

Data di rilascio: 09 febbraio 2021released February 09, 2021

In questa versione di Visual Studio 2019 versione 16.7.11In this Release of Visual Studio 2019 version 16.7.11

Avviso di sicurezzaSecurity Advisory Notice

CVE-2021-1639 Vulnerabilità di esecuzione remota del codice del servizio di linguaggio TypeScript CVE-2021-1639 TypeScript Language Service Remote Code Execution Vulnerability

Una vulnerabilità di esecuzione di codice in modalità remota esiste quando Visual Studio un repository dannoso contenente file di codice JavaScript o TypeScript.A remote code execution vulnerability exists when Visual Studio loads a malicious repository containing JavaScript or TypeScript code files.

Vulnerabilità Denial of Service di .NET Core CVE-2021-1721 CVE-2021-1721 .NET Core Denial of Service Vulnerability

Quando si crea una richiesta Web HTTPS durante la compilazione della catena di certificati X509, esiste una vulnerabilità Denial of Service.A denial-of-service vulnerability exists when creating HTTPS web request during X509 certificate chain building.

CVE-2021-24112 .NET 5 e vulnerabilità di esecuzione di codice remoto .NET Core CVE-2021-24112 .NET 5 and .NET Core Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione di codice in modalità remota quando si espongono metafile quando un'interfaccia grafica contiene ancora un riferimento.A remote code execution vulnerability exists when disposing metafiles when a graphics interface still has a reference to it. Questa vulnerabilità esiste solo nei sistemi in esecuzione in MacOS o Linux.This vulnerability only exists on systems running on MacOS or Linux.


Release Notes Icon Visual Studio 2019 versione 16.7.10Visual Studio 2019 version 16.7.10

Data di rilascio: 12 gennaio 2021released January 12, 2021

In questa release di Visual Studio 2019 versione 16.7.10In this Release of Visual Studio 2019 version 16.7.10

Avviso di sicurezzaSecurity Advisory Notice

CVE-2021-1651 / CVE-2021-1680 Vulnerabilità di elevazione dei privilegi del servizio dell'agente di raccolta standard dell'hub di diagnostica CVE-2021-1651 / CVE-2021-1680 Diagnostics Hub Standard Collector Service Elevation of Privilege Vulnerability

Esiste una vulnerabilità di elevazione dei privilegi quando l'agente di raccolta standard dell'hub di diagnostica gestisce in modo non corretto le operazioni sui dati.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector incorrectly handles data operations.

CVE-2020-26870 Vulnerabilità di esecuzione remota del codice del Programma di installazione di Visual Studio CVE-2020-26870 Visual Studio Installer Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione remota del codice quando il Programma di installazione di Visual Studio tenta di visualizzare codice Markdown dannoso.A remote code execution vulnerability exists when the Visual Studio Installer attempts to show malicious markdown.

CVE-2021-1723 Vulnerabilità Denial of Service di .NET Core e Visual Studio CVE-2021-1723 .NET Core and Visual Studio Denial of Service Vulnerability

Esiste una vulnerabilità Denial of Service nell'implementazione di Kestrel.A denial of service vulnerability exists in the implementation of Kestrel.


Release Notes Icon Visual Studio 2019 versione 16.7.9Visual Studio 2019 version 16.7.9

Data di rilascio: 08 dicembre 2020released December 08, 2020

In questa release di Visual Studio 2019 versione 16.7.9In this Release of Visual Studio 2019 version 16.7.9

Avviso di sicurezzaSecurity Advisory Notice

CVE-2020-17156 Vulnerabilità di esecuzione remota del codice di Visual Studio CVE-2020-17156 Visual Studio Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione remota del codice quando Visual Studio clona un repository dannoso.A remote code execution vulnerability exists when Visual Studio clones a malicious repository.


Release Notes Icon Visual Studio 2019 versione 16.7.8Visual Studio 2019 version 16.7.8

data di rilascio: 10 novembre 2020released November 10, 2020

In questa release di Visual Studio 2019 versione 16.7.8In this Release of Visual Studio 2019 version 16.7.8

Avviso di sicurezzaSecurity Advisory Notice

CVE-2020-17100 Vulnerabilità alla manomissione di Visual Studio CVE-2020-17100 Visual Studio Tampering Vulnerability

Quando Python Tools per Visual Studio crea la cartella python27, esiste una vulnerabilità alla manomissione.A tampering vulnerability exists when the Python Tools for Visual Studio creates the python27 folder. Un utente malintenzionato che riesce a sfruttare questa vulnerabilità potrebbe eseguire processi in un contesto con privilegi elevati.An attacker who successfully exploited this vulnerability could run processes in an elevated context.



Release Notes Icon Visual Studio 2019 versione 16.7.7Visual Studio 2019 version 16.7.7 New release icon

Data di rilascio: 27 ottobre 2020released October 27, 2020

In questa release di Visual Studio 2019 versione 16.7.7In this Release of Visual Studio 2019 version 16.7.7



Release Notes Icon Visual Studio 2019 versione 16.7.6Visual Studio 2019 version 16.7.6

Data di rilascio: 13 ottobre 2020released October 13, 2020

In questa release di Visual Studio 2019 versione 16.7.6In this Release of Visual Studio 2019 version 16.7.6



Release Notes Icon Visual Studio 2019 versione 16.7.5Visual Studio 2019 version 16.7.5

Data di rilascio: 29 settembre 2020released September 29, 2020

In questa release di Visual Studio 2019 versione 16.7.5In this Release of Visual Studio 2019 version 16.7.5



Release Notes Icon Visual Studio 2019 versione 16.7.4Visual Studio 2019 version 16.7.4

Data di rilascio: 21 settembre 2020released September 21, 2020

In questa release di Visual Studio 2019 versione 16.7.4In this Release of Visual Studio 2019 version 16.7.4


  • Aggiunta del supporto per Xcode 12.0 GM.Adds Xcode 12.0 GM support.
  • Aggiunta del supporto per l'impostazione di un set di colori come colore principale nell'editor Info.plist.Adds support for setting a Color set as Accent Color in the Info.plist editor.

Release Notes Icon Visual Studio 2019 versione 16.7.3Visual Studio 2019 version 16.7.3

Data di rilascio: 08 settembre 2020released September 08, 2020

In questa release di Visual Studio 2019 versione 16.7.3In this Release of Visual Studio 2019 version 16.7.3


Avviso di sicurezzaSecurity Advisory Notice

CVE-2020-1130 Vulnerabilità di elevazione dei privilegi dell'agente di raccolta standard dell'hub di diagnostica CVE-2020-1130 Diagnostics Hub Standard Collector Elevation of Privilege Vulnerability

Esiste una vulnerabilità di elevazione dei privilegi quando l'agente di raccolta standard dell'hub di diagnostica gestisce in modo non corretto le operazioni sui dati.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector improperly handles data operations. Un utente malintenzionato che riesce a sfruttare questa vulnerabilità potrebbe eseguire processi in un contesto con privilegi elevati.An attacker who successfully exploited this vulnerability could run processes in an elevated context.

CVE-2020-1133 Vulnerabilità di elevazione dei privilegi dell'agente di raccolta standard dell'hub di diagnostica CVE-2020-1133 Diagnostics Hub Standard Collector Elevation of Privilege Vulnerability

Esiste una vulnerabilità di elevazione dei privilegi quando l'agente di raccolta standard dell'hub di diagnostica gestisce in modo non corretto le operazioni sui file.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector improperly handles file operations. Un utente malintenzionato che riesce a sfruttare questa vulnerabilità potrebbe eseguire processi in un contesto con privilegi elevati.An attacker who successfully exploited this vulnerability could run processes in an elevated context.

CVE-2020-16856 Vulnerabilità di esecuzione remota del codice di Visual Studio CVE-2020-16856 Visual Studio Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione del codice remoto in Visual Studio quando gestisce in modo non corretto gli oggetti in memoria.A remote code execution vulnerability exists in Visual Studio when it improperly handles objects in memory. Un utente malintenzionato può sfruttare efficacemente questa vulnerabilità ed eseguire codice arbitrario nel contesto dell'utente corrente.An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.

CVE-2020-16874 Vulnerabilità di esecuzione remota del codice di Visual Studio CVE-2020-16874 Visual Studio Remote Code Execution Vulnerability

Esiste una vulnerabilità di esecuzione del codice remoto in Visual Studio quando gestisce in modo non corretto gli oggetti in memoria.A remote code execution vulnerability exists in Visual Studio when it improperly handles objects in memory. Un utente malintenzionato può sfruttare efficacemente questa vulnerabilità ed eseguire codice arbitrario nel contesto dell'utente corrente.An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.

CVE-2020-1045 Vulnerabilità di bypass della funzionalità di sicurezza di Microsoft ASP.NET Core CVE-2020-1045 Microsoft ASP.NET Core Security Feature Bypass Vulnerability

Esiste una vulnerabilità di bypass della funzionalità di sicurezza nel modo in cui Microsoft ASP.NET Core analizza i nomi dei cookie codificati.A security feature bypass vulnerability exists in the way Microsoft ASP.NET Core parses encoded cookie names. Il parser del cookie di ASP.NET Core decodifica intere stringhe di cookie e ciò potrebbero consentire a un utente malintenzionato di impostare un secondo cookie con il nome codificato con percentuale.The ASP.NET Core cookie parser decodes entire cookie strings which could allow a malicious attacker to set a second cookie with the name being percent encoded.

Ulteriori problemi corretti in questa versioneAdditional Issues Fixed in this Release

  • Correzione di un arresto anomalo del compilatore per istruzioni switch o espressioni switch che usano criteri di ricerca.Fixed a compiler crash for switch statements or switch expressions that use pattern matching.
  • Ripristino del flusso di lavoro "Interrompi debug (MAIUSC+F5)" per il testing unità terminando l'esecuzione dei test.Restored the "Stop Debugging(Shift +F5)" workflow for Unit Testing by terminating the test run.
  • Impedire l'arresto anomalo di Visual Studio durante il cambio della configurazione del progetto quando la finestra di progettazione WinForms .NET Core contiene modifiche non salvate.Prevent VS crash on switching project configuration when WinForms .NET Core designer has unsaved changes.
  • Le versioni non più supportate di .NET Core non verranno più reinstallate durante un ripristino o un aggiornamento se sono state rimosse all'esterno dell'installazione di Visual Studio.Out of support versions of .NET Core will no longer be reinstalled during a repair or upgrade if they were removed outside of VS setup.
  • Correzione di un problema a causa del quale non venivano cercate in modo accurato le dipendenze esterne nei file.Fixed an issue where External Dependencies weren't accurately searched in Find in Files.
  • Reintroduzione del pulsante "Commit" nel sottomenu Git nel menu di scelta rapida del Esplora soluzioni.Reintroduced the "Commit..." button in the Git submenu in Solution Explorer's context menu.
  • Correzione di un bug che causava l'invisibilità dell'etichetta delle note di archiviazione TFVC.Fixed a bug that caused the TFVC Check-in Notes label to be invisible.
  • Correzione di un arresto anomalo durante l'uso della finestra di progettazione WinForm in un csproj di tipo SDK con più framework di destinazione.Fix crash when using WinForm designer in SDK-style csproj with multiple target frameworks.
  • Correzione del problema a causa del quale <d:Style.DataContext> segnalava un errore di markup non valido.Fixed issue where <d:Style.DataContext> was reporting an invalid markup error.

Problemi più comuni risolti da Developer Community in Visual Studio 2019 versione 16.7.3Top Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.3


Release Notes Icon Visual Studio 2019 versione 16.7.2Visual Studio 2019 version 16.7.2

Data di rilascio: 18 agosto 2020released August 18, 2020

In questa release di Visual Studio 2019 versione 16.7.2In This Release of Visual Studio 2019 version 16.7.2


Problemi più comuni risolti da Developer Community in Visual Studio 2019 versione 16.7.2Top Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.2


Release Notes Icon Visual Studio 2019 versione 16.7.1Visual Studio 2019 version 16.7.1

Data di rilascio: 11 agosto 2020released August 11, 2020

In questa release di Visual Studio 2019 versione 16.7.1In This Release of Visual Studio 2019 version 16.7.1


Problemi più comuni risolti da Developer Community in Visual Studio 2019 versione 16.7.1Top Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.1


Release Notes Icon Visual Studio 2019 versione 16.7.0Visual Studio 2019 version 16.7.0

Data di rilascio: 5 agosto 2020released August 5, 2020

In questa release di Visual Studio 2019 versione 16.7.0In This Release of Visual Studio 2019 version 16.7.0


C++C++

  • Il supporto di C++ remoto supporta ora una gamma più ampia di distribuzioni e shell Linux, tra cui sh, csh, bash, tsch, ksh, zsh e dash.Our remote C++ support now supports a wider range of Linux distros and shells, including sh, csh, bash, tsch, ksh, zsh, and dash. È possibile ignorare la scelta di una shell per una connessione remota modificando la nuova proprietà "shell" tramite ConnectionManager.exe.You can override the choice of a shell for a remote connection by modifying the new "shell" property via ConnectionManager.exe. Questo supporto è stato testato con i progetti Linux basati su MSBuild e i progetti CMake destinati a un sistema Linux remoto o a WSL.This support has been tested with both MSBuild-based Linux projects and CMake projects targeting a remote Linux system or WSL.
  • È ora possibile usare Ninja (un sistema di compilazione che valuta le compilazioni incrementali molto rapidamente) per migliorare i tempi di compilazione incrementali per i progetti Linux basati su MSBuild.You can now use Ninja (a build system that evaluates incremental builds very quickly) to improve incremental build times for MSBuild-based Linux projects. È possibile acconsentire esplicitamente a questa funzionalità impostando "Abilita compilazioni incrementali" su "Con Ninja" nella pagina delle proprietà generali.You can opt into this feature by setting "Enable Incremental Build" to "With Ninja" in the General Property Page. Ninja (ninja-build) deve essere installato nel sistema Linux remoto o in WSL.Ninja (ninja-build) must be installed on your remote Linux system or WSL.
  • Sono state implementate nuove funzionalità della libreria standard C++20.New C++20 Standard Library features have been implemented. Per un elenco dettagliato, vedere il log delle modifiche STL su GitHub.Please refer to the STL Changelog on GitHub for a detailed list.
  • È ora possibile modificare e impostare le connessioni SSH remote predefinite in Gestione connessioni.You can now edit and set default remote SSH connections in the Connection Manager. È quindi possibile modificare una connessione remota esistente (ad esempio, se è stato modificato l'indirizzo IP) e impostare le connessioni predefinite da utilizzare in CMakeSettings.json e launch.vs.json.This means you can edit an existing remote connection (e.g. if its IP address changed) and set default connections to be consumed in CMakeSettings.json and launch.vs.json. Le connessioni SSH remote consentono di eseguire direttamente da Visual Studio la compilazione e il debug di progetti C++ in un sistema Linux remoto.Remote SSH connections allow you to build and debug C++ projects on a remote Linux system directly from Visual Studio.
Edit remote connections in the Connection Manager
Modificare le connessioni remote in Gestione connessioniEdit remote connections in the Connection Manager
  • Supporto avanzato di IntelliSense per Clang in Windows (clang-cl) in Visual Studio.Enhanced IntelliSense support for Clang on Windows (clang-cl) in Visual Studio. Il percorso di inclusione di Clang include ora le librerie Clang. È stata migliorata la visualizzazione della linea ondulata nell'editor quando si usa la libreria std ed è stato aggiunto il supporto per C++2a in modalità Clang.The clang include path now includes the clang libraries, we've improved in-editor squiggle display when using the std library, and we've added support for C++2a in clang mode.
  • è ora possibile provare la sottolineatura degli errori del codice e visualizzare un numero maggiore di correzioni rapide suggerite nei progetti C++.You can now try out underlining code errors and see more suggested quick fixes in C++ projects.  Abilitare questa funzionalità in Strumenti > Opzioni > Editor di testo > C/ C++ > Sperimentale > impostare 'Disabilita linter del codice sperimentale' su false.Enable this feature under Tools > Options > Text Editor > C/C++ > Experimental > Set 'Disable Experimental Code Linter' to false. Per altre informazioni, vedere il blog del team di C++.Learn more on the C++ Team Blog.
IntelliSense code linter
Linter del codice IntelliSenseIntelliSense code linter
  • Sono state aggiunte quattro nuove regole di analisi codice per incorporare funzionalità di sicurezza aggiuntive in C++: C26817, C26818, C26819 e C26820.We've added four new code analysis rules to incorporate additional safety features into C++: C26817, C26818, C26819, and C26820.
  • È stato aggiunto un supporto di livello avanzato per eseguire il debug di progetti CMake in sistemi remoti con gdbserver.We've added first-class support for debugging CMake projects on remote systems with gdbserver.
  • Per i progetti nativi x64 è ora disponibile un'implementazione sperimentale di AddressSanitizer per C++ in Visual Studio che consente di rilevare facilmente errori di danneggiamento della memoria.Find memory corruption errors easily with an experimental implementation of AddressSanitizer for C++ in Visual Studio, now available for x64 native projects. È ora supportato anche l'uso di runtime di debug (/MTd, /MDd, /LDd).We also now support the use of debug runtimes (/MTd, /MDd, /LDd).
  • IntelliSense include ora il supporto di base per concetti, inizializzatori designati e varie altre funzionalità di C++ 20.IntelliSense now has basic support for Concepts, designated initializers, and several other C++20 features.
  • I file con estensione ixx e cppm sono ora riconosciuti come C++ e verranno trattati come tali dall'evidenziatore della sintassi e da IntelliSense..ixx and .cppm files are now recognised as C++ and will be treated as such by the syntax highlighter and IntelliSense.

Definire le playlist in modo dinamicoDefine playlists dynamically

È ora possibile definire le playlist in modo dinamico in base al progetto, alla classe o allo spazio dei nomi.You can now define playlists dynamically based on Project, Class, or Namespace. È quindi possibile configurare una playlist per includere tutti gli elementi in un determinato progetto/classe/spazio dei nomi. Ogni nuovo test aggiunto al gruppo verrà automaticamente incluso nella playlist.This means you can configure a playlist to include everything in a certain project/class/namespace; any new test added to that group will automatically be included in your playlist!

  • Per creare una playlist, fare clic con il pulsante destro del mouse su un raggruppamento di progetti, spazi dei nomi o classi in Esplora test.Create a playlist by right clicking on a project, namespace, or class grouping in the Test Explorer.
Test Explorer: Create a playlist
Esplora test: creare una playlistTest Explorer: Create a playlist
  • Modificare i gruppi inclusi nella playlist facendo clic sul pulsante di modifica nella barra degli strumenti.Edit what groups are included in the playlist by clicking on the edit button in the tool bar. Verranno visualizzate le caselle di controllo.Check boxes will appear. Modificare i gruppi in base alle esigenze.Edit groups as desired.
Test Explorer: Edit a playlist
Esplora test: modificare una playlistTest Explorer: Edit a playlist
  • Anziché essere un elenco statico di test, queste playlist vengono aggiornate in modo dinamico in base a regole.Instead of being a static list of tests these playlists dynamically update based on rules. Per comprendere meglio le regole che generano la playlist dinamica, salvare il file della playlist su disco usando il pulsante Salva e visualizzare le regole generate nel codice XML.If you want to better understand what rules are generating your dynamic playlist, save the playlist file to disk with the save button and view the rules generated in the xml.
PlayList file dynamic rule set
Set di regole dinamiche del file di PlayListPlayList file dynamic rule set
  • È possibile continuare a includere e/o escludere singoli test e la playlist aggiornerà le regole dinamiche o tornerà a tenere traccia dei test come elenco statico.You can continue to include/exclude individual tests and the playlist will be able to either update its dynamic rules or switch back to keeping track of tests as a static list. È anche possibile usare i tratti per definire un gruppo dinamico modificando direttamente il file XML della playlist.You can also use traits to define a dynamic group by editing the playlist xml file directly.

Produttività GitGit Productivity

Attivare la funzionalità di anteprima 'New Git User Experience' (Nuova esperienza utente Git) in Strumenti | Opzioni | Environment to use this experience (Ambienti che usano questa esperienza).Toggle on the 'New Git user experience' Preview Feature in Tools | Options | Environment to use this experience.

  • Creare un nuovo repository Git, a partire da qualsiasi cartella o da una nuova cartellaCreate a new Git repository, starting from any folder or a brand new folder
  • Salvare e chiudere una cartella o una soluzione aperta prima di avviare una nuova operazione di clonazioneSave and close an open folder or solution before starting a new clone operation
  • Visualizzare in modo chiaro gli errori dei messaggi di commit o di accantonamento nella casella di testo del commitView commit or stash message errors clearly in the commit text box
  • Visualizzare e gestire i rami Git in una visualizzazione albero all'interno di una nuova finestra Repository GITView and manage Git branches in a tree view within a new Git Repository window
  • Passare a e interagire con il grafico della cronologia di ogni ramo nella finestra Repository GITSwitch between and interact with the history graph of each branch in the Git Repository window
  • Visualizzare i commit in entrata e in uscita nella finestra Repository GitView incoming and outgoing commits in the Git Repository window
  • Altri dettagli sulle funzionalità recenti nel blog del team responsabile della produttività GitGit Productivity team blog with more details of recent features
Manage branches and view history in a focused Git Repository window
Gestire i rami e visualizzare la cronologia in una finestra del Repository GIT mirataManage branches and view history in a focused Git Repository window

Risolvere i conflitti di merge con un editor di merge attivo di Git usando:Resolve merge conflicts with a Git focused merge editor using:

  • Una barra delle informazioni nei file contenenti conflitti di merge, che richiede di aprire l'editor di mergeAn info bar in files containing merge conflicts that prompts you to open the merge editor
  • Titoli e didascalie più informativi e meno disordine nell'editor di mergeMore informative titles and captions, and less clutter in the merge editor
  • Differenze nei conflitti che allineano le righe corrispondenti, mostrano le differenze a livello di parola e visualizzano lo spazio vuoto visibile quando è l'unica differenza.Diffs within conflicts that align matching lines, show word level differences, and display visible whitespace when it is the only difference.
  • Merge bidirezionali per conflitti di aggiunta/aggiunta a livello di fileTwo-way merges for file level add/add conflicts
  • Possibilità di risolvere tutti i conflitti in base a un lato o all'altro con un solo clicThe ability to resolve all conflicts to one side or the other with a single click
  • Interruttore per mettere in evidenza solo i conflitti e ignorare le differenze non conflittualiA toggle to focus on just conflicts, ignoring non-conflicting differences
New Merge Editor Experience
Risolvere i conflitti di merge con l'editor di mergeResolve Merge Conflicts with the Merge Editor

JavaScript/TypeScriptJavaScript/TypeScript

  • Sono state aggiornate le implementazioni di Completamento e Informazioni rapide per supportare meglio gli scenari LiveShare.The implementations of Completion and Quick Info have been updated to better support LiveShare scenarios.

Processo locale con KubernetesLocal Process with Kubernetes

Local Process with Kubernetes
Processo locale con KubernetesLocal Process with Kubernetes

Processo locale con Kubernetes consente di scrivere, testare ed eseguire il debug del codice .NET nella workstation di sviluppo rimanendo connessi al cluster Kubernetes con il resto delle applicazioni o dei servizi.Local Process with Kubernetes allows you to write, test and debug your .NET code on your development workstation while connected to your Kubernetes cluster with the rest of your application or services. Connettendo la workstation di sviluppo al cluster, si elimina la necessità di eseguire e di configurare manualmente i servizi dipendenti nel computer di sviluppo.By connecting your development workstation to your cluster, you eliminate the need to manually run and configure dependent services on your development machine. Le variabili di ambiente, le stringhe di connessione e i volumi del cluster sono disponibili per il codice del microservizio in esecuzione in locale.Environment variables, connection strings and volumes from the cluster are available to your microservice code running locally. Non sono necessarie risorse aggiuntive, ad esempio manifesti Dockerfile o Kubernetes.There is no need for extra assets, such as a Dockerfile or Kubernetes manifests. L'esecuzione, il debug e il test del codice .NET seguono le normali procedure.Run, debug, and test your .NET code as you normally would.

Per abilitare Processo locale con Kubernetes, passare a Strumenti > Opzioni > Ambiente > Funzionalità di anteprima e selezionare "Enable local debugging for Kubernetes services" (Abilita il debug locale per i servizi Kubernetes).To enable Local Process with Kubernetes, go to Tools > Options > Envrionment > Preview Features and select "Enable local debugging for Kubernetes services".

Enable Preview Features
Abilitare le funzionalità di anteprimaEnable Preview Features

Per le applicazioni console .NET è necessario un passaggio aggiuntivo.For .NET console applications, an additional step is required. Installare il pacchetto NuGet "Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets".Install the "Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets" Nuget Package.

Produttività .NET.NET Productivity

Sono ora disponibili un avviso e una correzione del codice quando un operatore di eliminazione è presente, ma non ha alcun effetto.There is now a warning and code fix when a suppression operator is present but has no effect. È disponibile anche una seconda correzione del codice che suggerisce l'espressione di negazione corretta.A second code fix suggesting the correct negating expression is also available. Posizionare il cursore sull'operatore di eliminazione.Place your cursor on the suppression operator. Premere (Ctrl + . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl + .) to trigger the Quick Actions and Refactorings menu. Selezionare poi uno dei tipi seguenti:Next, select from one of the following:

  • Per rimuovere completamente l'operatore, selezionare Rimuovi l'operatore (conserva la semantica) :To remove the operator completely, select Remove operator (preserves semantics):
Code fix to remove suppression operator
Correzione del codice per rimuovere l'operatore di eliminazioneCode fix to remove suppression operator
  • Per negare l'espressione, selezionare Nega l'espressione (modifica la semantica) :To negate the expression, select Negate expression (change semantics):
Code fix to negate expression
Correzione del codice per negare l'espressioneCode fix to negate expression
  • È anche possibile negare l'espressione con il nuovo modello di C# 9 not se è disponibile nel progetto:You can also negate the expression with the new C# 9 not pattern if it is available in your project:
Code fix to negate expression using not
Correzione del codice per negare l'espressione mediante notCode fix to negate expression using not

È ora possibile generare proprietà durante la generazione di un costruttore in un tipo.You can now generate properties when generating a constructor in a type. Posizionare il cursore sull'istanza.Place your cursor on the instance. Premere (Ctrl + . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl + .) to trigger the Quick Actions and Refactorings menu. Selezionare Genera costruttore in <QualifiedName> (con proprietà) .Select Generate constructor in <QualifiedName> (with properties).

Generate properties when generating constructor
Generare proprietà durante la generazione del costruttoreGenerate properties when generating constructor
  • Informazioni rapide ora visualizza l'ID di diagnostica con un collegamento alla Guida che consente di passare facilmente alla documentazione per ottenere altre informazioni sugli avvisi e sugli errori nel codice.Quick Info now displays the diagnostic ID along with a help link where you can easily navigate to our documentation to learn more about warnings and errors in your code.
Quick Info Diagnostic ID and Help Link
ID di diagnostica di Informazioni rapide e collegamento alla GuidaQuick Info Diagnostic ID and Help Link
  • È ora disponibile un'azione rapida per aggiungere un attributo di visualizzazione del debugger a una classe.There is now a quick action to add a debugger display attribute to a class. In questo modo è possibile aggiungere le proprietà all'interno del debugger a livello di codice.This allows you to pin properties within the debugger programmatically in your code. Posizionare il cursore sul nome della classe.Place your cursor on the class name. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selezionare Add ‘DebuggerDisplay` attribute (Aggiungi attributo DebuggerDisplay).Select Add ‘DebuggerDisplay` attribute. L'attributo di visualizzazione del debugger verrà aggiunto all'inizio della classe e verrà generato un metodo automatico che restituisce ToString () che è possibile modificare affinché restituisca il valore della proprietà che si vuole aggiungere al debugger.This will add the debugger display attribute to the top of your class and generate an auto method that returns ToString() which you can edit to return the property value you want pinned in the debugger.
Add Debugger Display Attribute
Aggiungere l'attributo di visualizzazione del debuggerAdd Debugger Display Attribute
  • È ora disponibile una correzione del codice per assegnazioni o confronti accidentali con la stessa variabile.There is now a code fix for accidental assignments or comparisons to the same variable. Posizionare il cursore sull'avviso.Place your cursor on the warning. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Per le assegnazioni accidentali, selezionare Assegna a .valore.For accidental assignments, select Assign to .value. Per i confronti accidentali, selezionare Confronta con .valore.For accidental comparisons, select Compare to .value.
Accidental Assignments Code Fix
Correzione del codice per le assegnazioni accidentaliAccidental Assignments Code Fix
Accidental Comparisons Code Fix
Correzione del codice per i confronti accidentaliAccidental Comparisons Code Fix
  • È ora possibile generare operatori di confronto per i tipi che implementano IComparable.You can now generate comparison operators for types that implement IComparable. Posizionare il cursore all'interno della classe o in IComparable.Place your cursor either inside the class or on IComparable. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selezionare Genera gli operatori di confronto.Select Generate comparison operators. Verrà automaticamente generata una sezione di codice con gli operatori di confronto.A boiler plate will be generated for you with the comparison operators.
Generate Comparison Operators
Generare gli operatori di confrontoGenerate Comparison Operators
  • È ora possibile generare gli operatori IEquatable durante la generazione di .Equals per gli struct.You can now generate IEquatable operators when generating .Equals for structs. È già stato effettuato il refactoring per Genera Equals e GetHashCode per i tipi di valore.We already had a refactoring to Generate Equals and GetHashCode for value types. Ora con gli struct verranno automaticamente aggiunti gli operatori IEquatable e gli operatori di uguaglianza e disuguaglianza.Now with structs we will automatically add the IEquatable as well as the equals and not equals operators for you. Posizionare il cursore all'interno dello struct.Place your cursor within the struct. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selezionare Genera Equals(oggetto) .Select Generate Equals(object).
Generate IEquatable Operators
Generare operatori IEquatableGenerate IEquatable Operators
  • È ora possibile creare e assegnare proprietà o campi per tutti i parametri del costruttore non usati.You can now create and assign properties or fields for all unused constructor parameters. Era già disponibile un'azione rapida per un singolo parametro. Ora è possibile eseguire questa operazione per tutti i parametri non usati in una sola volta.We already had a quick action that allowed you to do this on an individual parameter, but now you can do it for all unused parameters at once. Posizionare il cursore su un qualsiasi parametro rimanente.Place your cursor on any of the remaining parameters. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Per creare e inizializzare le proprietà, selezionare Crea e assegna rimanenti come proprietà.To create and initialize properties, select Create and assign remaining as properties. Per creare e inizializzare i campi, selezionare Crea e assegna rimanenti come campi.To create and initialize fields, select Create and assign remaining as fields.
Create and Assign Remaining Fields
Creare e assegnare rimanenti come campiCreate and Assign Remaining Fields
Create and Assign Remaining Properties
Creare e assegnare rimanenti come proprietàCreate and Assign Remaining Properties
  • È ora disponibile il completamento IntelliSense nei valori letterali stringa DateTime e TimeSpan.There is now IntelliSense completion in DateTime and TimeSpan string literals. Posizionare il cursore all'interno del valore letterale stringa DateTime o TimeSpan e premere (CTRL+BARRA SPAZIATRICE).Place your cursor inside the DateTime or TimeSpan string literal and press (Ctrl+Space). Verranno quindi visualizzate le opzioni di completamento e una spiegazione relativa al significato di ogni carattere.You will then see completion options and an explanation as to what each character means. Verranno visualizzati il formato di data e ora e un esempio.Both the date time format and an example will be provided.
IntelliSense Completion in DateTime and TimeSpan
Completamento IntelliSense nei valori letterali stringa DateTime e TimeSpanIntelliSense Completion in DateTime and TimeSpan string literals
  • È ora possibile aggiungere un parametro all'interno della finestra di dialogo Cambia firma.You can now add a parameter within the Change Signature dialog. Posizionare il cursore all'interno della firma del metodo.Place your cursor within the method’s signature. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selezionare Cambia firma.Select Change signature. Si aprirà la finestra di dialogo seguente in cui è ora possibile selezionare Aggiungi per aggiungere un parametro.The following dialog will open where you can now select Add to add a parameter. Dopo aver selezionato Aggiungi, si aprirà la nuova finestra di dialogo Aggiungi parametro.Once you select Add, the new Add Parameter dialog will open. La finestra di dialogo Aggiungi parametro consente di aggiungere un nome di tipo e un nome di parametro.The Add Parameter dialog allows you to add a type name and a parameter name. È possibile scegliere di rendere il parametro obbligatorio o facoltativo con un valore predefinito.You can choose to make the parameter required or optional with a default value. È quindi possibile aggiungere un valore nel sito di chiamata e scegliere un argomento denominato per tale valore oppure è possibile introdurre una variabile TODO.You can then add a value at the call site and choose a named argument for that value or you can introduce a TODO variable. La variabile TODO inserisce un valore TODO nel codice in modo che sia possibile visualizzare ogni errore, esaminare ogni sito di chiamata in modo indipendente e decidere cosa passare.The TODO variable puts a TODO in your code so you can visit each error and go through each call site independently and decide what to pass. Per i parametri facoltativi è possibile omettere completamente il sito di chiamata.For optional parameters you have the option to omit the call site completely.
Change Signature Dialog
Finestra di dialogo Cambia firmaChange Signature Dialog
Add Parameter Dialog
Finestra di dialogo Aggiungi parametroAdd Parameter Dialog
  • Gli autori di analizzatori possono ora usare CompletionProviders per i completamenti IntelliSense quando distribuiscono gli analizzatori con NuGet.Analyzer authors can now use CompletionProviders for IntelliSense completions when shipping their analyzers with NuGet. Prima, gli autori di librerie avrebbero dovuto creare un progetto VSIX separato poiché CompletionProviders era disponibile solo in VSIX.Before, library authors would have to create a separate VSIX since CompletionProviders was only available in VSIX. Ora gli autori di librerie possono implementare i completamenti IntelliSense nel pacchetto NuGet in cui si trovano gli analizzatori, senza dover eseguire l'operazione separatamente.Now library authors can implement IntelliSense completions in the NuGet package where their analyzers are, and they don’t need to do it separately. I provider di completamento implementati nei pacchetti NuGet offrono anche suggerimenti specifici per i singoli progetti e funzionano automaticamente in ogni IDE che supporta la funzionalità.Completion providers implemented in NuGet packages will also provide suggestions specific to individual projects and will automatically work in each IDE supporting the feature.

RazorRazor

Per provare con tutti i file di Razor (con estensione cshtml/razor) il nuovo editor sperimentale di Razor basato sul protocollo di server di linguaggio, selezionare la funzionalità di anteprima Enable experimental Razor editor (Abilita l'editor sperimentale di Razor).Try out the new experimental Language Server Protocol (LSP) powered Razor editor with all Razor files (.cshtml/.razor) by selecting the Enable experimental Razor editor preview feature.

Esplora testTest Explorer

I comandi Esegui/Esegui debug di tutti i test nella visualizzazione sono stati aggiunti a Esplora test.Run/Debug All Tests In View have been added to the Test Explorer. Questi comandi sostituiscono i comandi Esegue tutti i test e Esegui debug di tutti i test visualizzati in Esplora test.These commands replace where the Run All Tests and Debug All Tests commands appeared in the Test Explorer. Questa modifica chiarisce che questi comandi rispettano i filtri di Esplora test in modo che vengano eseguiti solo i test visibili nella finestra.This change clarifies that these commands honor the filters of the Test Explorer so that only tests visible in window are run. Sono inclusi sia i filtri delle colonne che i filtri della casella di ricerca.This includes both column filters and search box filters.

Test Explorer Run/Debug All Tests in View commands
Comandi Esegui/Esegui debug di tutti i test nella visualizzazione di Esplora testTest Explorer Run/Debug All Tests in View commands

I comandi globali Esegui/Esegui debug di tutti verranno ora visualizzati solo nel menu Test di primo livello.The Global Run/Debug All commands will now only appear in the top-level Test menu. Non sono più inclusi nella barra degli strumenti di Esplora test o nel menu di scelta rapida di qualsiasi visualizzazione della finestra di test.They are no longer included in the Test Explorer toolbar or context menu of any test window view. Quando viene attivato da Esplora test, il comando Analizza code coverage per i test selezionati si applica ora anche alle visualizzazioni della finestra di test.When triggered from the Test Explorer, the Analyze Code Coverage for All Tests now applies to the test window views as well.

Tasti di scelta rapida:Short-cut Keys:

  • CTRL R, A - Esegui tutti i test - Comando globale che esegue sempre tutti i testCtrl R, A - Run All Test - Global command always runs all tests
  • CTRL R, V - Esegui tutti i test nella visualizzazione - Comando valido solo quando è attiva una finestra di test (Esplora test, playlist, Live Unit Testing)Ctrl R, V - Run All Tests In View - Only a valid command when a test window (Test Explorer, Playlist, Live Unit Testing Window) are active windows
  • CTRL R, CTRL A - Esegui debug di tutti i test - Comando globale che esegue sempre il debug di tutti i testCtrl R, Ctrl A - Debug All Test - Global command always debugs all tests
  • CTRL R, CTRL V - Esegui debug di tutti i test nella visualizzazione - Comando valido solo quando è attiva una finestra di test (Esplora test, playlist, Live Unit Testing)Ctrl R, Ctrl V - Debug All Tests In View - Only a valid command when a test window (Test Explorer, Playlist, Live Unit Testing Window) are active windows

DebuggerDebugger

Visualizzazione di oggetti COM gestiti tramite puntatori nativiViewing Managed COM Objects Through Native Pointers

Questa funzionalità decodifica automaticamente gli oggetti COM gestiti a cui fanno riferimento i puntatori nativi che consentono di controllare completamente i valori nella finestra Variabili locali.This feature automatically decodes managed COM objects referenced by native pointers allowing you to fully inspect values in the Locals window. Per altri dettagli, vedere questo post nel blog di Visual Studio.You can find more details here at the Visual Studio blog.

ProfilerProfiler

Nuovo strumento Contatori delle prestazioni .NETNew .NET Performance Counters Tool

.NET Performance Counters Tool
Strumento Contatori delle prestazioni .NET.NET Performance Counters Tool

Visualizzare contatori dotnet direttamente dall'interno del profiler di Visual Studio usando lo strumento Contatori delle prestazioni .NET.Visualize dotnet counters right from within the Visual Studio Profiler using the .NET Performance Counters Tool. Per provare lo strumento, passare a Debug-> Profiler prestazioni-> selezionare .NET Performance Counters Tool (Strumento Contatore delle prestazioni .NET).To try out the tool go to Debug -> Performance Profiler -> Checkmark .NET Performance Counters Tool.

XamarinXamarin

  • Sono state introdotte utilità di correzione del codice per i tipi di problemi più comuni riscontrati dagli utenti con i file di layout Android.Code fixers have been introduced for the most common types of problems experienced by users with Android layout files.
  • L'esperienza di selezione del modello Xamarin.Forms ha ora un aspetto nuovo e più esemplificativo e i modelli Riquadro a comparsa e A schede usano ora Shell.The Xamarin.Forms template selection experience now has a fresh and more illustrative look, and the Flyout and Tabbed templates now utilize Shell. Altre informazioni su Shell sono disponibili qui.Read more about Shell here. Se per qualche motivo non si vuole usare Shell, usare il modello Vuoto.If for some reason you don't wish to use Shell, use the Blank template.
New Xamarin.Forms template selection experience
Scelta di un modello Xamarin.FormsChoosing a Xamarin.Forms template

Strumenti XAML (WPF, UWP e Xamarin.Forms)XAML Tools (WPF, UWP & Xamarin.Forms)

Ricaricamento rapido XAML:XAML Hot Reload:

  • Miglioramenti della barra degli strumenti in-app: è stata migliorata ulteriormente l'esperienza della barra degli strumenti in-app che fa parte del flusso di lavoro degli strumenti di Ricaricamento rapido XAML per WPF e UWP.In-app Toolbar Improvements: We have further refined the in-app toolbar experience that is part of the XAML Hot Reload tooling workflow for WPF & UWP. Le modifiche includono una barra degli strumenti più breve in modo che non copra più l'applicazione in esecuzione e una modifica nel meccanismo di compressione che, quando si fa clic, comprimerà ora prima di tutto il testo di Ricaricamento rapido XAML, quindi comprimerà completamente la barra al secondo clic.Changes include a shorter toolbar so that it no longer covers the running application, and a change in the collapse mechanism which when clicked will now collapse the XAML Hot Reload text first, then collapse the bar fully on the second click.

Finestra di progettazione XAML:XAML Designer:

  • Espansione del supporto per i dati in fase di progettazione per WPF e UWP: in questa versione viene introdotta una nuova funzionalità per i dati in fase di progettazione per gli sviluppatori WPF.NET Core e UWP.Expanded Design-time Data Support for WPF & UWP: In this release we are introducing a new design-time data feature for WPF .NET Core and UWP developers. Questa nuova funzionalità estenderà l'elenco corrente delle proprietà della fase di progettazione accessibili tramite l'uso del prefisso d:.This new capability will extend the current list of accessible design-time properties through the use of the d: prefix. Questa funzionalità sarà familiare per gli sviluppatori Xamarin.Forms, in quanto rende disponibile lo stesso approccio per l'uso di un prefisso "d:" per indicare una proprietà di cui eseguire il rendering solo in fase di progettazione e che non viene mai compilata nell'app in esecuzione, rendendola molto sicura per l'uso per la convalida dell'interfaccia utente in fase di progettazione.This feature will be familiar to Xamarin.Forms developers, as it makes available the same approach of using a “d:” prefix to indicate a property that should only be rendered at design-time and never gets compiled into the running app making it very safe to use for design time UI validation. In questa versione sono supportati tutti i controlli predefiniti per WPF e UWP ed è previsto il supporto di controlli di terze parti e personalizzati nelle versioni future.In this release we support all the out-of-the-box controls for WPF and UWP and plan to support 3rd party and custom controls in future releases.
  • Pulsante di aggiornamento della finestra di progettazione XAML: è stato aggiunto un pulsante di aggiornamento alla finestra di progettazione XAML. Questa nuova icona si trova nell'area delle icone in basso a sinistra accanto all'indicatore del livello di zoom.XAML Designer Refresh Button: We have added a refresh button to the XAML designer, this new icon can be found in the bottom-left icon area near the zoom level indicator. Questa azione di aggiornamento esegue il ripristino equivalente alla chiusura della visualizzazione di progettazione e alla successiva riapertura per le rare situazioni in cui è necessario procedere in questo modo per risolvere un problema di rendering.This refresh action does the equivalent reset of closing the designer view and re-opening it for the rare situations where this is required to resolve a rendering issue. Questa funzionalità è disponibile per gli sviluppatori WPF .NET Core e UWP.This feature is available for WPF .NET Core and UWP developers.

Editor di codice XAML:XAML Code Editor:

  • Visualizzatore dei colori: Il nuovo visualizzatore dei colori è stato ulteriormente perfezionato nell'editor di codice XAML per i progetti WPF .NET Core, WPF .NET Framework e Xamarin.Froms.Color Visualizer: We have further refined our new color visualizer in the XAML code editor for WPF .NET Core, WPF .NET Framework and Xamarin.Froms projects. In questa versione è stato aggiunto il supporto per la visualizzazione dei colori provenienti dalle risorse, in precedenza non supportata nell'ultima versione di anteprima.In this release we have added support for visualizing colors coming from resources, which was previously not supported in the last preview.
Inline Color Previews in XAML Code Editor
Anteprime colori inline nell'editor di codice XAMLInline Color Previews in XAML Code Editor

Visualizzare gli elementi della casella degli strumenti da un pacchetto NuGet senza avere un riferimento al pacchettoShow Toolbox items from a NuGet package without having a package reference

Molti autori di librerie di controlli vogliono che i controlli siano visibili nella casella degli strumenti anche quando il progetto corrente non ha ancora fatto riferimento alla libreria, per poterli individuare più facilmente.Many control library authors want their controls to be seen in the Toolbox even when the current project hasn't referenced the library yet, as this helps with discoverability. A questo scopo, gli SDK di WPF .NET Framework hanno sempre usato le voci del Registro di sistema, ma in .NET Core non è possibile.WPF .NET Framework SDKs have historically accomplished this using registry entries, but this is not supported by .NET Core. Per WPF .NET Core, la casella degli strumenti ora può essere popolata con i controlli dei file VisualStudioToolsManifest.xml disponibili nei pacchetti NuGet WPF .NET Core nelle cartelle di fallback di NuGet.For WPF .NET Core, Toolbox can now be populated with controls from VisualStudioToolsManifest.xml files found within WPF .NET Core NuGet packages in NuGet fallback folders. Per altre informazioni, vedere la documentazione nel repository GitHub sull'estendibilità della finestra di progettazione XAML.For more details, see the documentation in the XAML Designer Extensibility GitHub repo.

Windows FormWindows Forms

Progettazione Windows Form per .NET CoreWindows Forms Designer for .NET Core

È ora disponibile la finestra di progettazione Windows Form per i progetti .NET Core.The Windows Forms designer for .NET Core projects is now available. Per abilitare la finestra di progettazione in Visual Studio, passare a Strumenti > Opzioni > Ambiente > Funzionalità in anteprima e selezionare l'opzione Use the preview Windows Forms designer for .NET Core apps (Usa la finestra di progettazione Windows Form in anteprima per le app.NET Core).To enable the designer in Visual Studio, go to Tools > Options > Environment > Preview Features and select the Use the preview Windows Forms designer for .NET Core apps option.

In questa versione sono ora supportati i controlli seguenti insieme ad altri miglioramenti:In this release the following controls are now supported along with other improvements:

  • Infrastruttura di controlli UserControl e personalizzatiUserControl and custom controls infrastructure
  • TableLayoutPanelTableLayoutPanel
  • Nozioni fondamentali per il supporto di controlli di terze partiFundamentals for third-party controls support
  • Nozioni fondamentali per il supporto di data bindingFundamentals for data binding support
  • Miglioramenti nell'interazione della finestra di progettazione con TableLayoutPanelImprovements in designer interaction with the TableLayoutPanel

Correzioni di bugBug Fixes

Principali problemi risolti in Visual Studio 2019 versione 16.7.0Top Issues Fixed in Visual Studio 2019 version 16.7.0

  • È stato corretto un errore di installazione del componente Provider WMI.Fixed WMI Provider component installation failure.
  • È stato risolto un problema a causa del quale gli utenti non erano in grado di visualizzare lo stato di avanzamento dei test facendo clic sul pulsante a sinistra nella parte inferiore della barra.Fixed an issue where users were not able to see test run progress by clicking the left button at the bottom of the bar.
  • Miglioramento delle prestazioni dell'individuazione dei piani di fatturazione disponibili per codespace di Visual Studio.Improved performance of discovering available Visual Studio Codespace billing plans.
  • Quando si crea un codespace di Visual Studio, il tempo di sospensione predefinito è stato modificato da 30 minuti a 3 ore.When creating a Visual Studio Codespace, we changed the default suspend time from 30minutes to 3 hours.
  • Correzione di un bug a causa del quale la finestra Modifiche GIT informa l'utente che hanno commit in ingresso/in uscita, quando in realtà ne hanno nessuno.Fix bug where the Git Changes window informs the user they have incoming/outgoing commits, when in fact they have none.
  • Maggiore stabilità di Strumenti di diagnostica e Profiler prestazioni.Improved stability of the Diagnostic Tools and Performance Profiler.
  • È stato risolto un problema a causa del quale l'estensione di Visual Studio Azure Sphere non viene aggiornata automaticamente a causa di una mancata corrispondenza della versione secondaria.Addressed an issue where Azure Sphere Visual Studio extension will not be automatically updated due to a minor version mismatch. Con la correzione, Azure Sphere potrà essere aggiornato automaticamente quando viene eseguito lo strumento di aggiornamento automatico VSIX.With the fix, Azure Sphere will be able to get automatically updated when the VSIX auto updater runs.

Dalla Developer CommunityFrom Developer Community


Problemi notiKnown Issues

Vedere tutti i problemi aperti e le soluzioni alternative disponibili in Visual Studio 2019 facendo clic sul collegamento seguente.See all open issues and available workarounds in Visual Studio 2019 by following the below link.


Feedback e suggerimentiFeedback and suggestions

Le opinioni dei nostri clienti sono molto importanti per noi.We would love to hear from you! È possibile segnalare un problema tramite l'opzione Segnala un problema disponibile nell'angolo superiore destro del programma di installazione o dell'IDE di Visual Studio.For issues, let us know through the Report a Problem option in the upper right-hand corner of either the installer or the Visual Studio IDE itself. Alla classeThe Feedback Icon L'icona si trova nell'angolo superiore destro.icon is located in the upper right-hand corner. È possibile inviare un suggerimento sul prodotto o monitorare lo stato dei problemi nella community degli sviluppatori di Visual Studio, dove è possibile porre domande, trovare risposte e proporre nuove funzionalità.You can make a product suggestion or track your issues in the Visual Studio Developer Community, where you can ask questions, find answers, and propose new features. È anche possibile usufruire gratuitamente del supporto per l'installazione con Assistenza live chat.You can also get free installation help through our Live Chat support.


BlogBlogs

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à.Take advantage of the insights and recommendations available in the Developer Tools Blogs site to keep you up-to-date on all new releases and include deep dive posts on a broad range of features.


Cronologia delle note sulla versione di Visual Studio 2019Visual Studio 2019 Release Notes History

Per altre informazioni relative a versioni precedenti di Visual Studio 2019, vedere la pagina Cronologia delle note sulla versione di Visual Studio 2019.For more information relating to past versions of Visual Studio 2019, see the Visual Studio 2019 Release Notes History page.


Inizio pagina

Top of Page