Visual Studio Icon Visual Studio versione 2019 16.10Visual Studio 2019 version 16.10 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à di Visual Studio 2019 versione 16.10What's New in Visual Studio 2019 version 16.10

Visual Studio 2019 versione 16.10Visual Studio 2019 version 16.10 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:


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

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

Riepilogo delle novità di questa versione di Visual Studio 2019 versione 16.10.0Summary of What's New in this Release of Visual Studio 2019 version 16.10.0

C++C++

  • Tutte le funzionalità di C++20 sono ora disponibili sotto /std:c++latest l'opzione .All C++20 features are now available under the /std:c++latest switch. Anche se l'implementazione di MSVC degli standard C++20 (come attualmente pubblicato da ISO) è completa, alcune funzionalità chiave della libreria C++20 dovrebbero essere modificate dai report di difetti imminenti (correzioni di bug ISO C++20) che potrebbero modificarle in modo incompatibile con ABI.While MSVC’s implementation of the C++20 standards (as currently published by ISO) is feature complete, some key C++20 library features are expected to be amended by upcoming Defect Reports (ISO C++20 bug fixes) that may change them in an ABI-incompatible way. Per altri dettagli, vedere Microsoft/STL Issue #1814 .Please see Microsoft/STL Issue #1814 for more details.
    • Funzioni immediate C++20 & supporto constinit aggiunto nella versione 16.10C++20 immediate functions & constinit support added in 16.10
    • Le parti finali di <chrono> : nuovi orologi, secondi intercalare, fusi orari e analisiThe final pieces of <chrono>: new clocks, leap seconds, time zones, and parsing
    • Implementazione di <format> per la formattazione del testoImplementation of <format> for text formating
  • /openmp:llvm è ora disponibile in x86 e ARM64, oltre a x64/openmp:llvm is now available on x86 and ARM64, in addition to x64
  • Le directory di inclusione possono ora essere designate come esterne con livelli di avviso di compilazione personalizzati e impostazioni di analisi del codice.Include directories can now be designated as external with customized compilation warning levels and code analysis settings.
  • Aggiunta dell'opzione per abilitare le coroutine di tipo /await:strict C++20 nelle modalità del linguaggio precedenti.Added the /await:strict switch to enable C++20-style coroutines in earlier language modes.
  • Nella visualizzazione debugger di vengono ora visualizzati il nome e la std::coroutine_handle<T> firma della funzione coroutine originale e il punto di sospensione corrente.Debugger visualization of std::coroutine_handle<T> now displays the original coroutine function name and signature and the current suspend point.
  • Aggiunta del supporto per CMakePresets.Added support for CMakePresets.
  • Verrà ora richiesto di accettare o negare l'impronta digitale della chiave host presentata dal server quando si aggiunge una nuova connessione remota in Visual Studio.You will now be required to accept or deny the host key fingerprint presented by the server when adding a new remote connection in Visual Studio.
  • Aggiunta di /external un'opzione a MSVC per specificare le intestazioni che devono essere considerate esterne a scopo di avviso.Added an /external switch to MSVC for specifying headers which should be treated as external for warning purposes.

Miglioramenti degli strumenti di DockerDocker Tools improvements

  • Possibilità di creare un profilo di avvio che configura i servizi da avviare nel file Compose.Ability to create a launch profile that configures which services to start in your Compose file.
  • Possibilità di contrassegnare un'immagine.Ability to tag an image.
  • Aggiunta di una scheda Volumi per i contenitori.Added a Volumes tab for containers.
  • Aggiunta di una scheda Etichette per i contenitori.Added a Labels tab for containers.
  • Aggiunta di una scheda Etichette per le immagini.Added a Labels tab for images.
  • I contenitori sono ora raggruppati in base al progetto Compose.Containers are now grouped by Compose project.

EditorEditor

  • Per gli utenti che vogliono un'esperienza meno piena, è possibile modificare l'interlinea cercando "interlinea" Visual Studio ricerca (CTRL+Q).For folks who want a less crowded experience, line spacing can be modified by searching for "line spacing" in Visual Studio Search (Ctrl+Q). L'opzione si trova in Editor di testo\Generale.The option is under Text Editor\General.
  • Trova nei file e Trova tutti i riferimenti ha un controllo per mantenere i risultati.Find in Files and Find all References have a control to keep results. In base ai commenti e suggerimenti della community, è stata aggiunta un'opzione per attivare l'opzione "Mantieni risultati" per impostazione predefinita.Based on feedback from our community, we've added an option to toggle the "Keep Results" option to on by default. Per trovare questa opzione, cercare "Mantieni i risultati della ricerca per impostazione predefinita" Visual Studio ricerca (CTRL+Q).This option can be found by searching for "keep search results by default" in Visual Studio Search (Ctrl+Q). L'opzione si trova in Ambiente\Trova e sostituisci.The option is under Environment\Find and Replace. Si noti che gli utenti sono attualmente limitati a 5 risultati per Trova nei file e altri 5 risultati per Trova tutti i riferimenti.Note that users are currently limited to 5 results for Find in Files and 5 more results for Find all References.
  • Una nuova opzione in Trova nei file consente agli utenti di eseguire ricerche aggiuntive e aggiungere tali risultati a una ricerca precedente.A new option in Find in Files allows users to run additional searches and append those results to a previous search.

Estendibilità dell'editorEditor Extensibility

  • Il comportamento del codice che gestisce IntraTextAdornmentTags è stato modificato.The behavior of the code that manages IntraTextAdornmentTags has changed. Con questa modifica, proprio come con qualsiasi altro ITagger,è necessario generare un evento di modifica dei tag quando i tag sottostanti cambiano.With this change, just like with any other ITagger, you must raise a tags changed event when the underlying tags change. In caso contrario, i tag potrebbero non essere mai aggiornati.Otherwise, your tags may never be updated.

Debug & diagnosticaDebugging & Diagnostics

  • L'analisi diagnostica dei dump di memoria include ora i dump core di Linux gestiti.Diagnostic Analysis of memory dumps now includes Managed Linux core dumps.

Produttività GitGit Productivity

  • Passare al Web con collegamenti diretti per creare una nuova richiesta pull e visualizzare le richieste pull in GitHub o Azure DevOps dal menu Git.Jump to the web with deep links to create a new pull request and view PRs on GitHub or Azure DevOps from the Git menu.
  • Estrarre i rami locali e remoti con una singola selezione dal selettore di ramo.Checkout local and remote branches with a single select from the branch picker.
  • Rimuovere elementi dal selettore del repository tramite il menu di scelta rapida.Remove items from the repository picker through the context menu.
  • Attivare il caricamento automatico della soluzione quando si apre un repository Git tramite Git > impostazioni.Turn on automatic loading of the solution when opening a Git repository through Git > Settings.
  • Attivare/disattivare il comportamento del doppio clic per estrarre i rami dalla finestra Repository Git tramite Git > impostazioni.Toggle behavior of double-clicking to check out branches from the Git Repository window through Git > Settings.
  • Sincronizzare (eseguire il pull e quindi eseguire il push) del ramo con più remote dal menu di overflow della finestra Modifiche Git.Sync (Pull then Push) your branch with multiple remotes from the Git Changes window overflow menu.
  • Personalizzare le azioni visibili della barra degli strumenti della finestra Git Changes (Fetch, Pull, Push, Sync) dal menu di overflow.Customize your visible Git Changes window toolbar actions (Fetch, Pull, Push, Sync) from the overflow menu.
  • Aprire il repository nel browser dal menu di overflow della finestra Modifiche Git.Open your repository in the browser from the Git Changes window overflow menu.
  • Cercare ed estrarre rami locali e remoti dalla barra di stato.Search and checkout local and remote branches from the status bar.
  • Cercare e passare da un repository Git locale all'altro dalla barra di stato.Search and switch between local Git repositories from the status bar.
  • È stato risolto un problema a causa del quale l'elenco dei repository locali nel menu Git non Visual Studio'avvio.Fixed an issue where local repositories list in the Git menu wasn't loading on Visual Studio launch.
  • Aggiungere sottoposi di progetto annidati all'elenco di repository locali all'apertura di un repository.Add nested project sub-repos to your local repositories list when opening a repository.
  • Mantenere aperta la soluzione quando si passa da un repository all'altro tramite Git > impostazioni.Keep solution open when switching repositories through Git > Settings.
  • Disattivare apri cartella all'apertura di repository tramite Git > impostazioni.Turn off open folder when opening repositories through Git > Settings.
  • Sincronizzare il ramo con il computer remoto dal pulsante commit non di cui è stato eseguito il commit nella barra di stato e dal comando Sincronizza nel menu Git.Sync your branch with the remote from the unpushed commits button in the status bar, and from the Sync command in Git Menu.
  • Recuperare ed eseguire il pull dal riquadro della cronologia della finestra repository Git anche quando non sono presenti commit in ingresso.Fetch and pull from the Git Repository window history pane even when there are no incoming commits.
  • Visualizzare i dettagli del commit e il confronto delle modifiche ai file incorporate nella finestra Repository Git.View Commit Details and the comparison of file changes embedded in the Git Repository window.
  • Riconnettiti automaticamente o richiedi di stabilire una connessione Azure DevOps all'apertura di un repository Git Azure DevOps.Automatically re-connect or prompt to establish initial Azure DevOps connection when opening an Azure DevOps Git repository.
  • Unire e riassare i nomi dei rami visibili, sostituendo la terminologia di origine/destinazione confusa.Merge and rebase with visible branch names, replacing confusing Source / Target terminology.
  • Prestazioni e affidabilità migliorate per i glifi del controllo del codice sorgente in Esplora soluzioni.Improved performance and reliability for source control glyphs in Solution Explorer.
  • Mantenere le sezioni in ingresso/in uscita nella finestra Repository Git anche quando sono vuote.Preserve incoming/outgoing sections in Git Repository window even when empty.
  • Elenchi a discesa di recupero/pull/push consolidati per più computer remoti nella finestra Modifiche Git in un unico menu Azione.Consolidated Fetch/Pull/Push dropdowns for multiple remotes in Git Changes window to a single Action menu.

Produttività .NET.NET Productivity

  • Completamento dell'argomento nelle chiamate al metodoArgument completion in method calls
  • Interfaccia utente di EditorConfigEditorConfig UI
  • Esaminare visivamente ed esplorare la catena di ereditarietàVisually inspect and navigate the inheritance chain
  • Completamento IntelliSense per cast, indicizzatori e operatoriIntelliSense completion for casts, indexers, and operators
  • Supporto del debugger per i generatori di origineDebugger support for Source Generators
  • Supporto della pulizia del codice per Visual BasicCode cleanup support for Visual Basic
  • Aggiornamenti di Modifica e continuazione (EnC)Edit and Continue (EnC) updates
  • Rimuovere i riferimenti inutilizzatiRemove Unused References
  • Riga di interruzione intelligenteSmart Break Line
  • Semplificare il refactoring delle espressioni LINQSimplify LINQ expression refactoring
  • Completamento IntelliSense per i valori EnumIntelliSense completion for Enum values
  • Impostazione della modalità di completamento IntelliSenseIntelliSense completion mode setting
  • Preferenza di stile del codice per le nuove righeCode style preference for new lines
  • Supporto di Trova tutti i riferimenti per i generatori di origineFind All References support for Source Generators

Editor anteprima Razor (ASP.NET Core)Razor (ASP.NET Core) Preview Editor

  • Aggiornamenti del completamento intelliSenseIntelliSense completion updates
  • Passare a Supporto delle definizioni per i componenti genericiGo to Definition support for generic components
  • Nuova configurazione dello stile del codice per tabulazioni e spaziNew code style configuration for tabs and spaces
  • L'editor di testo Razor in Opzioni degli strumenti è ora denominato Razor (ASP.NET Core)Razor text editor in Tools Options is now called Razor (ASP.NET Core)

Miglioramenti dell'accessibilità dell'esperienza di testTest Experience Accessibility improvements

  • Console.Writeline viene ora visualizzato in Esplora testConsole.Writeline now shows in the Test Explorer
  • L'output di test può ora mantenere i tag in modo che i collegamenti ipertestuali e stacktrace siano esplorabili anche dai file di log.Test output can now preserve tags so hyperlinks and stacktrace links are navigable even from the log files.
  • I file di log vengono creati per un singolo risultato del test quando l'output è di oltre 300 caratteri o se sono presenti più di 10 file collegati al risultato del test.Log files are created for a single test result when output is over 300 characters or if there are over 10 files attached to the test result.
  • I file di log possono ora essere aperti anche in anteprima, in modo da semplificare la gestione delle schede.Log files can also now open in preview so it’s easier to manage your tabs.
  • I file di log e Esplora test supportano CTRL PGSU/PGDN per spostarsi sul cursore e MAIUSC+CTRL PGSU/PGDN per la selezione.Log files and the Test Explorer support Ctrl PgUp/PgDn for navigating the cursor and Shift+Ctrl PgUp/PgDn for selection.
  • L'editor di file di log usa ora l'interfaccia IVsTextView, che significa che sarà ora in grado di aprire file di testo di dimensioni molto grandi.The log file editor is now using the IVsTextView interface which means it will now be able to open very large text files. In questo modo, gli utenti devono troncare i log e Copy All aprirli in un editor separato, ad esempio Blocco note.This should eliminate the need for users to Copy All truncated logs and open them in a separate editor such as Notepad. Per MSTest è ora incluso anche un singolo file di log che aggrega tutto l'output anziché avere solo singoli file di log per ogni riga di dati.For MSTest, we now also include a single log file that aggregates all the output instead of only having individual log files for each data row.
  • È ora possibile ottenere il code coverage multipiattaforma dalla riga di comando in Ubuntu e Alpine con l'interfaccia della riga di comando dotnet.You can now get cross-platform code coverage at the command-line on Ubuntu and Alpine with the dotnet cli. Per gli utenti interessati a code coverage nei computer che usano tali piattaforme, è ora possibile aggiungere gli stessi comandi di raccolta code coverage che normalmente si usano nelle finestre.For users interested in getting code coverage on machines targeting those platforms you can now add the same code coverage collection commands that you'd normally use on windows. Vedere la documentazione per il test dotnet.See more documentation for dotnet test.
  • È ora disponibile un pulsante Espandi tutto accanto al pulsante Comprimi tutto in Esplora test.There is now an expand all button next to the collapse all button in the Test Explorer. Questo comando è disponibile tramite i tasti di scelta rapida (CTRL+A, CTRL+freccia DESTRA), ma altri commenti indicano che l'aggiunta di un pulsante vale la pena di aggiungere un'interfaccia utente aggiuntiva.This command has been available through keyboard shortcuts (Ctrl+A, Ctrl+ right arrow), but more feedback indicated adding a button was worth the additional UI. Come sempre, grazie per averci fatto sapere cosa si pensa tramite https://developercommunity.visualstudio.com/ .As always, thank you for letting us know what you think via https://developercommunity.visualstudio.com/.
  • Sono state apportate anche alcune piccole modifiche al modo in cui Esplora test mostra il "non disponibile".There are also some slight changes to how the Test Explorer shows "staleness." "Staleness" è il risultato del test in grigio o "in dissolvenza" che indica che il risultato non è stato restituito dall'esecuzione del test più recente."Staleness" is the grayed out or "faded" test results that indicate the result was not from the latest test run. Se un risultato non fa parte dell'esecuzione dei test più recente, verrà visualizzato come non obsoleto.If a result is not a part of the most recent test run it will appear as stale. In precedenza, le nuove individuazioni dei test (o anche i risultati dei test precedenti individuati) venivano visualizzate anche con icone a tinta unita.Previously, new test discoveries (or even old test results that were rediscovered) were also shown with solid icons. Ciò ha causato confusione sul motivo per cui alcuni test "Non eseguito" sono stati sfusi e perché altri no.This caused some confusion on why some 'Not Run' tests were faded and why others were not. Questa modifica ridurrà la complessità dell'obsoletità.This change will reduce the complexity of staleness.
  • Con la funzionalità dei risultati dei test persistenti (aggiunta nella versione 16.2) è possibile visualizzare i risultati dei test dall'ultima esecuzione dei test anche se sono stati chiusi e riaperti Visual Studio.With the persisted test results feature (added in version 16.2) you can see test results from the last test run even if you've closed and re-opened Visual Studio. Ciò consente agli utenti di ricordare il punto in cui sono stati lasciati e fornisce più contesto senza richiedere un'altra esecuzione dei test.This helps users remember where they left off and gives more context without requiring another test run. È stato modificato anche il comportamento dei risultati persistenti in modo che siano sempre non obsoleti.We also modified the behavior of persisted results so they will always appear stale. Ciò indica meglio che non sono stati eseguiti durante l'esecuzione del test durante la Visual Studio corrente.This better indicates that they were not from a test run that executed during the current Visual Studio session.

Strumenti Web:Web Tools:

  • Passare alla versione 2 dell'API per Azure AD provisioningSwitch to V2 of API for Azure AD provisioning
  • Configurazione app di Azure come servizio connesso supporta ora la configurazione dinamicaAzure App Configuration as a Connected Service now supports dynamic configuration

Progetto di creazione pacchetti per applicazioni Windows albero delle dipendenzeWindows Application Packaging Project Dependencies Tree

  • Aggiunta di un "albero delle dipendenze" al progetto WAPAdded a "Dependencies Tree" to the WAP Project

Miglioramenti degli strumenti XAMLXAML Tooling Improvements

  • IntelliSense e Ricaricamento rapido XAML XAML migliorati per i clienti di Xamarin.FormsImproved XAML IntelliSense and XAML Hot Reload for Xamarin.Forms customers
  • Introduzione di dati di esempio XAML per la selezione di elementiControlli in WPFIntroduced XAML Sample Data for select ItemsControls in WPF
  • Aggiunta di una nuova lampadina per l'accesso rapido alle proprietà modificate comunementeAdded new lightbulb for quick access to commonly edited properties
  • Aggiunta di una nuova lampadina nell'editor XAML per creare un modello di visualizzazioneAdded new lightbulb in the XAML Editor to help create a view-model

Strumenti di Service FabricService Fabric Tools

  • Introduzione alle StartupServices.xml in Service Fabric applicazioniIntroducing StartupServices.xml in Service Fabric Applications

Dettagli sulle novità di Visual Studio 2019 versione 16.10Details of What's New in Visual Studio 2019 version 16.10

Strumenti DockerDocker Tools

Finestra degli strumenti ContenitoriContainers Tool Window

In questa versione sono state aggiunte alla finestra degli strumenti Contenitori per semplificare la visualizzazione e l'interazione con contenitori e immagini.In this release, we made additions to the Containers tool window to make it easier to view and interact with containers and images. È sufficiente passare a Visualizza > altri contenitori > Windows per provare le nuove funzionalità.Just navigate to View > Other Windows > Containers to try out the new features.

  • I contenitori sono ora raggruppati in base al progetto Compose.Containers are now grouped by Compose project. In questo modo è semplice indicare quali contenitori rappresentano l'applicazione.This makes it simple to tell which containers represent your application. È stata anche aggiunta una scheda Etichette in Contenitori per visualizzare facilmente le etichette in uso durante lo sviluppo.Also shown, we added a Labels tab in Containers so you can easily see which labels you are using during development.
View of Compose grouping and Containers Label tab
Opzione di raggruppamento compose e scheda etichetta contenitoriCompose grouping option and containers label tab
  • È stata aggiunta anche una scheda Etichette per le immagini.We also added a Labels tab for images.
View of Images Label tab
Scheda Etichetta imageseImagese Label tab
  • La nuova scheda Volumi consente di visualizzare i volumi di un contenitore in esecuzione e persino di aprire i file in Visual Studio.The new Volumes tab allows you to see the volumes of a running container and even open the files in Visual Studio.
Animation of opening folder of container in Volumes tab
Scheda Volumi contenitoreContainer Volumes tab
  • È ora possibile contrassegnare un'immagine dalla finestra degli strumenti Contenitori.We now support the ability to tag an image from the Containers tool window. In Immagini fare clic con il pulsante destro del mouse su un'immagine e scegliere Tag.From Images, right-click an image and select Tag.
Animation of tagging an image in Images tab
Assegnazione di tag a un'immagineTagging an image
ComposizioneCompose
  • Docker Compose strumenti in Visual Studio ora offre la possibilità di eseguire qualsiasi combinazione di servizi definiti nei file Compose.Docker Compose tooling in Visual Studio now provides the ability to run any combination of services defined in your Compose files. Aprire l'elenco a discesa Debug o fare clic con il pulsante destro del mouse sul progetto docker-compose e scegliere Gestisci Docker Compose impostazioni di avvio per iniziare.Either open the Debug dropdown or right-click on your docker-compose project and select Manage Docker Compose Launch Settings to get started.
Right click menu shown with Manage Docker Compose Launch Settings highlighted
Gestire le Docker Compose di avvioManage Docker Compose Launch Settings

Produttività GitGit Productivity

  • Per iniziare a semplificare la creazione di richieste pull mentre si è in Visual Studio, sono state aggiunte voci di menu che sono collegamenti diretto alle pagine Web che consentono di creare una richiesta pull o visualizzare un elenco di richieste pull per il repository.To start making it easier to create pull requests while you're in Visual Studio, we added menu items that are deep link shortcuts to the webpages that allow you to create a PR or view a list of PRs for your repository. Il menu è dinamico a seconda che il repository sia in GitHub o Azure DevOps.The menu is dynamic based on whether your repository is on GitHub or Azure DevOps.
Create a PR and view list of PRs on the web from the Git menu.
Creare una richiesta pull e visualizzare l'elenco delle richiesta pull sul Web dal menu GitCreate a PR and view list of PRs on the web from the Git menu
  • Il selettore di ramo nella barra di stato e nella finestra Git Changes (Modifiche Git) ora estrazione di un ramo locale o remoto quando si seleziona il ramo con una sola selezione.The branch picker in the status bar and the Git Changes window now checks out a local or remote branch when you single-select the branch. È possibile trovare azioni aggiuntive nel menu di scelta rapida.You can find additional actions in the context menu.
Left click to check out a branch and right click for additional actions.
Fare clic con il pulsante sinistro del mouse per estrarre un ramo e fare clic con il pulsante destro del mouse per altre azioniLeft click to check out a branch and right click for additional actions
  • La nuova selezione repository nella barra di stato ha un menu di scelta rapida al clic con il pulsante destro del mouse che consente di rimuovere elementi dall'elenco.The new repository picker in the status bar has a context menu on right-click that allows you to remove items from the list.
Remove items from the repository picker list through the context menu.
Rimuovere elementi dall'elenco di selezione repository tramite il menu di scelta rapidaRemove items from the repository picker list through the context menu
  • Quando si usa la selezione repository o l'elenco Repository locali del menu Git, l'apertura di un repository non carica più automaticamente la soluzione.When using the repository picker or Git menu Local Repositories list, opening a repository won’t automatically load the solution anymore. Verranno invece visualizzate la visualizzazione cartelle e la soluzione disponibili in un elenco tra cui è possibile selezionare.You’ll instead see the folder view and solution available in a list you can select from. È possibile modificare questo comportamento tramite Git > impostazioni attivando la casella di controllo.You can change this behavior through Git > Settings by toggling the checkbox.

  • È possibile scegliere di estrarre un ramo dalla finestra Repository Git facendo doppio clic sul nome del ramo.You can choose to check out a branch from the Git Repository window by double-clicking the branch name. Se si vuole modificare questo comportamento, attivare o disattivare la casella di controllo in Git > impostazioni.If you want to change this behavior, then toggle the checkbox in Git > Settings.

Settings to toggle auto-sln load and branch check out.
Impostazioni per attivare/disattivare il caricamento automatico e l'estrazione dei ramiSettings to toggle auto-sln load and branch check out
  • È ora possibile eseguire altre azioni dalla finestra Git Changes (Modifiche Git).You can perform even more actions now from the Git Changes window. Le icone della barra degli strumenti sono personalizzabili ed è possibile scegliere le azioni da visualizzare.The toolbar icons are customizable and you can choose which actions to show. È possibile eseguire la sincronizzazione con più remote dal menu di overflow.You can Sync with multiple remotes from the overflow menu. È anche possibile aprire la pagina Web remota del repository nel browser.And you can open your repository’s remote webpage in the browser.
Git Changes overflow menu with callouts to Sync, open in browser, and toolbar actions.
Sincronizzare, aprire nel browser e personalizzare le azioni della barra degli strumenti dalla finestra Modifiche GitSync, open in browser, and customize toolbar actions from the Git Changes window
  • Cercare rami locali e remoti ed eseguire azioni di ramo comuni dal selettore ramo della barra di stato.Search local and remote branches and perform common branch actions from the status bar branch picker.
Branch picker in the status bar.
Selezione ramo nella barra di statoBranch picker in the status bar
  • Cercare e passare da un repository Git locale all'altro dal selettore del repository della barra di stato.Search and switch between local Git repositories from the status bar repository picker.
Repo picker in the status bar.
Selezione del repo nella barra di statoRepo picker in the status bar
  • È stato risolto un problema a causa del quale l'elenco dei repository locali nel menu Git non Visual Studio'avvio.Fixed an issue where the local repositories list in the Git menu wasn't loading on Visual Studio launch.

  • Sono state aggiunte due nuove opzioni in Git > impostazioni per gestire la modalità di apertura e cambio di repository.We added two new options in Git > Settings to manage how you open and switch repositories. È ora possibile mantenere aperta la soluzione corrente quando si passa a un altro repository

    Setting to keep solution open.You can now keep the current solution open when switching to another repository
    Setting to keep solution open.
    Impostazione per mantenere aperta la soluzione correnteSetting to keep current solution open

  • È anche possibile scegliere di non caricare la cartella radice del repository all'apertura di un repository.You can also choose to not load the repository root folder when opening a repository.

Setting to open folder.
Impostazione per aprire la cartellaSetting to open the folder
  • Sincronizzare (eseguire il pull e quindi eseguire il push) del ramo con il remoto dal pulsante commit non crittografati nella barra di stato e dal comando Sincronizza nel menu Git.Sync (Pull then Push) your branch with the remote from the unpushed commits button in the status bar, and from the Sync command in Git Menu.
Sync button in the status bar.
Pulsante Sincronizza nella barra di statoSync button in the status bar
  • Recuperare ed eseguire il pull dal riquadro cronologia della finestra del repository Git anche quando non sono presenti commit in ingresso.Fetch and pull from the Git Repository window history pane even when there are no incoming commits. Accedere a queste sezioni dalla barra di stato o dai tasti di scelta rapida CTRL+0+Y.Access these sections from the status bar or the keyboard shortcut Ctrl+0+Y.
Incoming section in Git Repository window with a callout to fetch and pull buttons.
Sezione In ingresso nella finestra Repository Git con i pulsanti di recupero e pullIncoming section in the Git Repository window with fetch and pull buttons
  • Selezionare un commit nella finestra Repository Git per visualizzarne i dettagli e il confronto delle modifiche ai file senza dover passare ad altre finestre.Select a commit in the Git Repository window to view its details and the comparison of file changes without having to navigate to other windows. Selezionare due commit e fare clic con il pulsante destro del mouse per confrontarli nella stessa finestra.Select two commits and right-click to compare them in the same window. Visualizzare i dettagli nella propria finestra per ottenere visibilità a schermo intero per approfondire le modifiche.Pop out the details into their own window for full screen visibility to deep-dive into the changes.
Embedded commit details and file comparison in Git Repository window.
Dettagli del commit incorporato e confronto dei file nella finestra Repository GitEmbedded commit details and file comparison in Git Repository window
  • Visualizzare il numero di eliminazioni e inserimenti in un file e modificare il layout del confronto.View the number of deletions and insertions in a file, and change the layout of the comparison.
Popped out Commit window with callouts to number of file changes and layout view buttons in toolbar
Estrazione di più finestre di commitPopped out multiple Commit windows
  • Riconnettiti automaticamente o richiedi di stabilire una connessione Azure DevOps all'apertura di un repository Git Azure DevOps.Automatically re-connect or prompt to establish initial Azure DevOps connection when opening an Azure DevOps Git repository. In questo modo è possibile accedere agli elementi di lavoro e alle compilazioni per il repository aperto.This enables access to work items and builds for the opened repository.
Info bar in Git Changes window prompting you to connect to Azure DevOps for the current repository.
Barra informazioni che richiede Azure DevOps connessione iniziale quando mancaInfo bar prompting Azure DevOps initial connection when missing
  • Durante la risoluzione dei conflitti di riasserzione o unione, l'editor di merge e il menu di scelta rapida visualizzano i nomi dei rami Corrente e In ingresso.When resolving rebase or merge conflicts, the merge editor and the context menu will show you the branch names for the Current and Incoming branches. Questo corregge la terminologia di origine e destinazione confusa.This fixes the confusing Source and Target terminology.
Context menu when resolving conflicts displays the branch names.
Il menu di scelta rapida durante la risoluzione dei conflitti visualizza i nomi dei ramiContext menu when resolving conflicts displays the branch names
Rebase and Merge editor displays branch names in the headings.
Rebase e Editor di merge visualizzano i nomi dei rami nell'intestazioneRebase and Merge editor displays branch names in the heading

Produttività .NET.NET Productivity

  • È stato aggiunto il comando Rimuovi riferimenti inutilizzati che consente di pulire i riferimenti al progetto e i pacchetti NuGet senza utilizzo.We added a Remove Unused References command that allows you to clean up project references and NuGet packages that have no usage. Questa opzione è disattivata per impostazione predefinita, quindi sarà necessario abilitarla in Strumenti Opzioni Editor di testo C# Avanzate e selezionare Il comando "Rimuovi riferimenti inutilizzati" in Esplora soluzioni > > > > (sperimentale).This option is off by default so you will need to enable it in Tools > Options > Text Editor > C# > Advanced and select Show “remove Unused References” command in Solution Explorer (experimental). Dopo aver abilitato l'opzione, il comando Rimuovi riferimenti inutilizzati verrà visualizzato nel menu di scelta rapida di un nome di progetto o di un nodo delle dipendenze in Esplora soluzioni:
    Remove Unused References commandOnce the option is enabled the Remove Unused References command will appear in the right-click menu of a project name or dependencies node in Solution Explorer:
    Remove Unused References command
    Comando Rimuovi riferimenti inutilizzatiRemove Unused References command

Selezionando Rimuovi riferimenti inutilizzati verrà aperta una finestra di dialogo in cui è possibile visualizzare tutti i riferimenti che verranno rimossi con un'opzione per mantenere quelli che si vuole mantenere:

Remove Unused References dialogSelecting Remove Unused References will open a dialog where you can view all references that are going to be removed with an option to preserve the ones that you want to keep:
Remove Unused References dialog
Finestra di dialogo Rimuovi riferimenti inutilizzatiRemove Unused References dialog

  • È stato aggiunto un nuovo comando denominato Smart Break Line che inserisce automaticamente un set di parentesi graffe e inserisce il punto di inserimento all'interno di tali parentesi graffe quando si usa MAIUSC INVIO come carattere + di commit.We added a new command called Smart Break Line that automatically inserts a set of braces and places the caret within those braces when using Shift+Enter as a commit character. Smart Break Line funziona per tutte le dichiarazioni di tipo che richiedono parentesi graffe, nonché per proprietà, eventi, campi ed espressioni di creazione di oggetti.Smart Break Line works for all type declarations that require braces as well as properties, events, fields, and object creation expressions. Nell'esempio seguente viene illustrata la linea di interruzione intelligente usata in una classe e in un campo.The example below shows Smart Break Line used on a class and a field. Se il campo non ha un punto e virgola alla fine, digitando MAIUSC INVIO il campo verrà convertito in una proprietà aggiungendo un + set di parentesi graffe.If the field doesn’t have a semicolon at the end, typing Shift+Enter will convert the field to a property by adding a set of braces. È possibile premere di nuovo MAIUSC INVIO per annullare il commit, che aggiungerà automaticamente un punto e + virgola alla fine del campo:

    Smart Break LineYou can press Shift+Enter again to undo the commit which will also automatically add a semicolon at the end of the field:
    Smart Break Line
    Linea di interruzione intelligenteSmart Break Line

  • È ora disponibile un refactoring per semplificare le espressioni LINQ che rimuoveranno la chiamata non necessaria a Enumerable per . Metodo Where() per migliorare le prestazioni e la leggibilità.There is now a refactoring to simplify LINQ expressions which will remove the unnecessary call to the Enumerable for the .Where() method to help improve performance and readability. Posizionare il cursore sull'espressione LINQ.Place your cursor on the LINQ expression. Premere (Ctrl+ . ) per attivare il menu Azioni rapide e refactoring.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Selezionare Semplifica espressione LINQ.Select Simplify LINQ expression.

Simplify LINQ Expression
Semplificare l'espressione LINQSimplify LINQ Expression
  • È ora disponibile il completamento IntelliSense per i valori Enum quando un tipo è noto anche se il nome dell'enumerazione non viene immesso.There is now IntelliSense completion for Enum values when a type is known even if the Enum name is not entered.
IntelliSense completion for Enum values
Completamento IntelliSense per i valori EnumIntelliSense completion for Enum values
  • È stata aggiunta una nuova impostazione della modalità di completamento IntelliSense che consente di impostare le opzioni di completamento predefinite.We added a new IntelliSense completion mode setting that gives you the ability to set default completion options. Questa nuova impostazione è disponibile in Strumenti Opzioni Editor di testo Modalità di completamento > > > > IntelliSense + + predefinita avanzata, in cui è possibile scegliere tra le opzioni seguenti: Ultimo usato che mantiene l'ultima impostazione usata con CTRL ALT+BARRA SPAZIATRICE, Tab-only che verrà completata solo nella scheda e Automatico, che è attualmente il comportamento predefinito che verrà completato in base alla punteggiatura e ai caratteri speciali.This new setting is available in Tools > Options > Text Editor > Advanced > Default IntelliSense completion mode where you can choose from the following options: Last used which will preserve the last setting you used with Ctrl+Alt+Space, Tab-only which will only complete on tab, and Automatic which is currently the default behavior that will complete on punctuation and special characters.
IntelliSense completion mode setting
Impostazione della modalità di completamento IntelliSenseIntelliSense completion mode setting
  • Sono state aggiunte nuove preferenze di stile del codice per le nuove righe.We added new code style preferences for new lines. È possibile configurare queste preferenze con un file EditorConfig o in Strumenti Opzioni Editor di testo C# Stile codice Preferenze nuova riga > > > > > (sperimentale).You can configure these preferences with an EditorConfig file or within Tools > Options > Text Editor > C# > Code Style > New line preferences (experimental).
Code style options for new lines
Opzioni di stile del codice per le nuove righeCode style options for new lines

Ad esempio, è possibile impostare la preferenza di stile del codice per segnalare una diagnostica e offrire una correzione del codice per rimuovere le righe vuote aggiuntive:

Code fix remove extra blank linesFor example, you can set your code style preference to report a diagnostic and offer a code fix to remove extra blank lines:
Code fix remove extra blank lines
Correzione del codice per rimuovere le righe vuote aggiuntiveCode fix remove extra blank lines

  • È ora disponibile il supporto Trova tutti i riferimenti per i generatori di origine che consente di trovare i riferimenti in un documento generato dall'origine.There is now Find All References support for Source Generators that allows you to find references in a source generated document.

  • È ora disponibile un'opzione di completamento che inserisce automaticamente argomenti durante la scrittura di una chiamata al metodo.There is now a completion option that automatically inserts arguments when writing a method call. Questa funzionalità è disattivata per impostazione predefinita, quindi è necessario abilitarla in Strumenti > Opzioni > Editor di testo > C# > IntelliSense e premere TAB due volte per inserire argomenti (sperimentale).This feature is off by default so you will need to enable it in Tools > Options > Text Editor > C# > IntelliSense and select Tab twice to insert arguments (experimental). Iniziare a scrivere una chiamata al metodo e premere TAB due volte (TAB+TAB).Start writing a method call and press tab twice (tab+tab). Si noti che la chiamata al metodo include argomenti basati sui valori predefiniti del metodo.Notice that the method call includes arguments based on the method’s default values. È quindi possibile usare le informazioni sui parametri per scorrere l'elenco di argomenti da inserire premendo i tasti freccia SU e GIÙ.You can then use parameter info to cycle through the list of arguments that you would like inserted by pressing the up and down arrow keys. È anche possibile iniziare a digitare un argomento per visualizzare l'elenco di completamento IntelliSense e digitare un punto e virgola che eseguirà il commit dell'argomento e aggiungerà un punto e virgola alla fine della chiamata al metodo.You can also start typing an argument to bring up the IntelliSense completion list and type semicolon which will commit the argument and add a semicolon to the end of the method call.

Method call argument completion
Completamento dell'argomento di chiamata al metodoMethod call argument completion
  • È stata creata un'interfaccia utente per EditorConfig.We created a UI for EditorConfig. Aprire qualsiasi file EditorConfig Visual Basic C# o dalla soluzione.Open any C# or Visual Basic EditorConfig file from your solution. Si noti che verrà aperta la nuova interfaccia utente con l'opzione di configurazione dello stile e della qualità del codice per C# e Visual Basic.Notice that the new UI will open displaying code style and code quality configuration option for both C# and Visual Basic.
EditorConfig UI
Interfaccia utente di EditorConfigEditorConfig UI
  • È ora disponibile una rappresentazione visiva per l'esplorazione e il controllo della catena di ereditarietà.There is now a visual representation for navigating and inspecting the inheritance chain. Questa opzione è disattivata per impostazione predefinita, quindi è necessario attivarla in Strumenti > Opzioni > Editor di testo > C# > Avanzate e selezionare Mostra margine ereditarietà.This option is off by default so you will need to turn it on in Tools > Options > Text Editor > C# > Advanced and select Show inheritance margin. L'abilitazione del margine di ereditarietà aggiunge nuove icone ai margini che rappresentano le implementazioni e gli override del codice.Enabling inheritance margin will add new icons to the margins representing your code’s implementations and overrides. Facendo clic sull'icona del margine di ereditarietà verranno visualizzate le opzioni di ereditarietà che è possibile selezionare per passare.Clicking on the inheritance margin icon will display inheritance options that you can select to navigate to.
Navigate the Inheritance Chain
Icone del margine di ereditarietàInheritance Margin Icons
  • È ora disponibile il completamento IntelliSense per cast, indicizzatori e operatori.There is now IntelliSense completion for casts, indexers, and operators.
IntelliSense completion for casts, indexers, and operators
Completamento IntelliSense per cast, indicizzatori e operatoriIntelliSense completion for casts, indexers, and operators
  • È ora disponibile il supporto del debugger per i generatori di origine.There is now debugger support for Source Generators. È prima di tutto necessario installare il .NET Compiler Platform SDK dal Programma di installazione di Visual Studio.You will first need to install the .NET Compiler Platform SDK component from the Visual Studio Installer. Sarà quindi necessario aggiungere la <IsRoslynComponent> proprietà true al file di </IsRoslynComponent> progetto.You will then need to add the <IsRoslynComponent>true</IsRoslynComponent> property to your your project file. Abilitare quindi l'opzione debugger "Componente Roslyn" nella pagina Debug proprietà progetto e selezionare il progetto di destinazione appropriato.Next, enable the 'Roslyn Component' debugger option in the Project Properties Debug page and select the appropriate target project. Premere quindi F5 nel progetto generatore che avvia il CSC.exe/VBC.exe che compila il progetto di destinazione consentendo di eseguire il debug del codice del generatore.Next, press F5 on the generator project which will start the CSC.exe/VBC.exe that builds the target project allowing you to debug the generator code.
Source Generator debugger
Debugger del generatore di origineSource Generator debugger
Source Generator debugger target project
Progetto di destinazione del debugger del generatore di origineSource Generator debugger target project

In questa versione sono stati aggiunti anche i miglioramenti seguenti all'esperienza di debug di Modifica e continuazione (EnC) in Visual Studio:In this release we also added the following enhancements to the Edit and Continue (EnC) debugging experience in Visual Studio:

  • È ora possibile applicare le modifiche nel codice che si trova all'interno di una classe parziale.It is now possible to apply changes in code that is within a partial class.
  • È ora possibile applicare le modifiche all'interno di un file generato dall'origine.You can now apply changes within a Source Generated) file.
  • È ora possibile aggiungere e/o modificare una direttiva using.It is now possible to add and/or change a using directive.
  • Miglioramenti dell'affidabilità e riduzione del consumo di memoria.Improvements in reliability and lower memory consumption.

Tutte e tre le modifiche sono disponibili in qualsiasi punto in cui EnC è attualmente supportato e funziona sia con C# che con Visual Basic di origine.All three changes are available anywhere where EnC is supported today and work with both C# and Visual Basic source files.

Diagnostica & debuggerDebugger & Diagnostics

  • Sono stati sviluppati diversi analizzatori per rilevare i problemi comuni managed memory dump.We have developed several analyzer to help catch common issues in managed memory dumps. Questa analisi può ora essere eseguita su dump di core Linux gestiti.This analysis can now be performed on managed Linux core dumps.
Automatically analyze memory dumps
Analisi diagnosticaDiagnostics Analysis
##### GrazieThank you Infine, un grande grazie alle persone che hanno contribuito questo mese al progetto Produttività .NET (noto anche comeLast but certainly not least, a big Thank You to the following people who contributed this month to .NET Productivity (a.k.a. [Roslyn](https://github.com/dotnet/roslyn)):[Roslyn](https://github.com/dotnet/roslyn)):

Editor anteprima Razor (ASP.NET Core)Razor (ASP.NET Core) Preview Editor

Il nuovo editor Razor di anteprima supporta ora le funzionalità di modifica Razor seguenti:The new preview Razor editor now supports the following Razor editing features:

  • Il completamento intelliSense ora filtra i componenti HTML, gli elementi TagHelper e gli attributi C#:

    Razor IntelliSense filtersIntelliSense completion now filters for HTML components, TagHelper elements, and C# attributes:
    Razor IntelliSense filters
    Filtri IntelliSense RazorRazor IntelliSense filters

  • Completamento intelliSense per gli override C#.IntelliSense completion for C# overrides.

  • Passare a Supporto delle definizioni per le componentinet generiche.Go to Definition support for generic componenets.

  • Nuove opzioni di configurazione dello stile del codice per tabulazioni e spazi.New code style configuration options for tabs vs spaces. Questi stili di codice verranno rispettati durante la digitazione, la formattazione e la creazione di un nuovo file Razor.These code styles will be respected when typing, formatting, and creating a new Razor file. È possibile configurare tabulazioni e spazi in Strumenti > Opzioni > Editor di testo > Razor (ASP.NET Core) > schede.You can configure tabs and spaces in Tools > Options > Text Editor > Razor (ASP.NET Core) > Tabs.

  • L'editor di testo Razor in Strumenti Opzioni è stato rinominato da ASP.NET Core Razor Language Services a Razor (ASP.NET Core).The Razor text editor in Tools Options has been renamed from ASP.NET Core Razor Language Services to Razor (ASP.NET Core).

Per abilitare il nuovo editor Razor di anteprima, passare a Strumenti > Opzioni > ambiente > Funzionalità di anteprima, selezionare Abilita editor Razor sperimentale e quindi riavviare Visual Studio.To enable the new preview Razor editor, go to Tools > Options > Environment > Preview Features, select Enable experimental Razor editor, and then restart Visual Studio.

Miglioramenti all'accessibilità dell'esperienza di testTest Experience Accessibility Improvements

  • Console.Writeline viene ora visualizzato in Esplora test.Console.Writeline now shows in the Test Explorer! L'output lungo viene visualizzato come sezione comprimibile nel riquadro di riepilogo dei dettagli del test.Long output appears as a collapsible section in the test detail summary pane. L'output su una determinata lunghezza visualizza le prime righe e viene quindi troncato con un'opzione per aprire il log di test in una finestra separata.Output over a certain length displays the first several lines and is then truncated with an option to open the test log in a separate window. Lo stacktrace tronca se sono presenti più di 20 frame e visualizza solo il primo e gli ultimi 10 frame.The stacktrace truncates if there are over 20 frames and will then only show the first and last 10 frames. Una parte importante della progettazione del troncamento è stata anche incentrata sulla riduzione dei blocchi di Visual Studio quando le esecuzioni dei test hanno un output di grandi dimensioni.An important part of the truncation design was also focused on reducing VS freezes when test runs have large output. I test con output di grandi dimensioni non bloccano più il thread dell'interfaccia utente.Tests that have large output will no longer block the UI thread.
Test output includes Console.Writeline
L'output del test include Console.WritelineTest output includes Console.Writeline
  • L'output del test può ora mantenere i tag in modo che i collegamenti ipertestuali e i collegamenti stacktrace siano esplorabili anche dai file di log.Test output can now preserve tags so hyperlinks and stacktrace links are navigable even from the log files. Anche questi collegamenti sono ora descrittivi per la tastiera.These links are now keyboard friendly as well.
Test output preserves hyperlinks and stacktraces
L'output di test mantiene collegamenti ipertestuali e stacktraceTest output preserves hyperlinks and stacktraces
Test logs also preserve hyperlinks and stacktraces
I log di test mantengono anche collegamenti ipertestuali e stacktraceTest logs also preserve hyperlinks and stacktraces
  • I file di log vengono creati per un singolo risultato del test quando l'output è di oltre 300 caratteri o se sono presenti più di 10 file collegati al risultato del test.Log files are created for a single test result when output is over 300 characters or if there are over 10 files attached to the test result. I file di log possono ora essere aperti anche in anteprima, in modo da semplificare la gestione delle schede.Log files can also now open in preview so it’s easier to manage your tabs. I file di log e Esplora test supportano CTRL PGSU/PGDN per spostarsi sul cursore e MAIUSC+CTRL PGSU/PGDN per la selezione.Log files and the Test Explorer support Ctrl PgUp/PgDn for navigating the cursor and Shift+Ctrl PgUp/PgDn for selection.
Test logs are easier to select with keyboard shortcuts
I log di test sono più facili da selezionare con i tasti di scelta rapidaTest logs are easier to select with keyboard shortcuts
  • L'editor di file di log usa ora l'interfaccia IVsTextView, che significa che sarà ora in grado di aprire file di testo di dimensioni molto grandi.The log file editor is now using the IVsTextView interface which means it will now be able to open very large text files. In questo modo, gli utenti devono troncare i log e Copy All aprirli in un editor separato, ad esempio Blocco note.This should eliminate the need for users to Copy All truncated logs and open them in a separate editor such as Notepad. Per MSTest è ora incluso anche un singolo file di log che aggrega tutto l'output anziché avere solo singoli file di log per ogni riga di dati.For MSTest, we now also include a single log file that aggregates all the output instead of only having individual log files for each data row.

Strumenti di testTest tools

  • È ora possibile ottenere il code coverage multipiattaforma dalla riga di comando in Ubuntu e Alpine con l'interfaccia della riga di comando dotnet.You can now get cross-platform code coverage at the command-line on Ubuntu and Alpine with the dotnet cli. Per gli utenti interessati a code coverage nei computer che usano tali piattaforme, è ora possibile aggiungere gli stessi comandi di raccolta code coverage che normalmente si usano nelle finestre.For users interested in getting code coverage on machines targeting those platforms you can now add the same code coverage collection commands that you'd normally use on windows. Vedere la documentazione per dotnet test.See more documentation for dotnet test.
  • È ora disponibile un pulsante Espandi tutto accanto al pulsante Comprimi tutto in Esplora test.There is now an expand all button next to the collapse all button in the Test Explorer. Questo comando è stato disponibile tramite i tasti di scelta rapida (CTRL+A, CTRL+freccia DESTRA), ma altri commenti e suggerimenti indicano che l'aggiunta di un pulsante è valsa l'interfaccia utente aggiuntiva.This command has been available through keyboard shortcuts (Ctrl+A, Ctrl+ right arrow), but more feedback indicated adding a button was worth the additional UI. Come sempre, grazie per averci fatto sapere cosa si pensa tramite https://developercommunity.visualstudio.com/ .As always, thank you for letting us know what you think via https://developercommunity.visualstudio.com/.
  • Esistono anche alcune lievi modifiche al modo in cui Esplora test mostra "staleness".There are also some slight changes to how the Test Explorer shows "staleness." "Staleness" è il risultato del test in grigio o "sbiadito" che indicano che il risultato non è stato dall'esecuzione del test più recente."Staleness" is the grayed out or "faded" test results that indicate the result was not from the latest test run. Se un risultato non fa parte dell'esecuzione dei test più recente, verrà visualizzato come non obsoleto.If a result is not a part of the most recent test run it will appear as stale. In precedenza, le nuove individuazioni di test (o anche i risultati dei test precedenti che venivano riscoperta) venivano visualizzate anche con icone a tinta unita.Previously, new test discoveries (or even old test results that were rediscovered) were also shown with solid icons. Ciò ha causato una certa confusione sul motivo per cui alcuni test 'Not Run' sono stati sbiaditi e perché altri non lo erano.This caused some confusion on why some 'Not Run' tests were faded and why others were not. Questa modifica ridurrà la complessità dell'inattività.This change will reduce the complexity of staleness.
  • Con la funzionalità dei risultati dei test persistenti (aggiunta nella versione 16.2) è possibile visualizzare i risultati dei test dall'ultima esecuzione dei test anche se sono stati chiusi e riaperti Visual Studio.With the persisted test results feature (added in version 16.2) you can see test results from the last test run even if you've closed and re-opened Visual Studio. Ciò consente agli utenti di ricordare il punto in cui sono stati lasciati e fornisce più contesto senza richiedere un'altra esecuzione dei test.This helps users remember where they left off and gives more context without requiring another test run. È stato modificato anche il comportamento dei risultati persistenti in modo che siano sempre non obsoleti.We also modified the behavior of persisted results so they will always appear stale. Ciò indica meglio che non sono stati eseguiti durante l'esecuzione del test durante la Visual Studio corrente.This better indicates that they were not from a test run that executed during the current Visual Studio session.
Persisted test results from last Visual Studio session appear faded
I risultati dei test persistenti dell'Visual Studio sessione sono in dissolvenzaPersisted test results from last Visual Studio session appear faded

Web ToolsWeb Tools

La configurazione dinamica consente l'aggiornamento automatico delle risorse di configurazione tramite un middleware.Dynamic configuration allows for configuration resources to be refreshed automatically using a middleware. Configurazione app come servizio connesso può ora integrare automaticamente la configurazione dinamica nell'applicazione.App Configuration as a Connected Service can now automatically integrate dynamic configuration into your application. Per usare questo servizio connesso, fare clic su Servizi connessi e aggiungere Configurazione app di Azure come dipendenza del servizio.To use this connected service, click on Connected Services and add Azure App Configuration as a Service Dependency.

Progetto di creazione pacchetti per applicazioni Windows "Albero delle dipendenze"Windows Application Packaging Project "Dependencies Tree"

  • In seguito al lavoro dell'anno scorso per abilitare i riferimenti ai pacchetti NuGet nel Progetto di creazione pacchetti per applicazioni Windows (WAP), è stata abilitata una nuova interfaccia utente nell'esperienza Esplora soluzioni wap.Following up on last year’s work to enable NuGet package references in the Windows Application Packaging Project (WAP), we have enabled a new UI in the WAP’s Solution Explorer experience. L'esperienza precedente non mostrava questi riferimenti ai pacchetti né consentiva di aggiungere pacchetti NuGet tramite l'interfaccia utente.The old experience didn’t show these package references or allow you to add NuGet packages via the UI.
Windows Application Packaging Project Old User Interface.
WaP Project Old Interfaccia utenteWAP Project Old User Interface
  • Nella nuova esperienza, con l'aiuto di CPS e del sistema di progetto .NET, è stato abilitato un "albero delle dipendenze" che continua a visualizzare i riferimenti al progetto tramite il sottoalbero "Applicazioni", ma include anche un sottoalbero "Pacchetti" che consente di gestire anche i pacchetti NuGet.In the new experience, with the help of CPS and the .NET Project System, we have enabled a “Dependencies Tree" that continues to display project references via the “Applications” subtree, but also features a “Packages” subtree that will allow you to manage NuGet packages as well.
Windows Application Packaging Project New User Interface.
Nuovo progetto WAP Interfaccia utenteWAP Project New User Interface

Miglioramenti degli strumenti XAML (WPF & Xamarin.Forms)XAML Tooling Improvements (WPF & Xamarin.Forms)

Xamarin.FormsXamarin.Forms

In questa versione sono stati apportati due piccoli miglioramenti a Xaml IntelliSense e Ricaricamento rapido XAML per i clienti di Xamarin.Forms.In this release we’ve made two small improvements to XAML IntelliSense and XAML Hot Reload for Xamarin.Forms customers. Ricaricamento rapido "solo modifica" non segnala più errori falsi per:Hot Reload “change only” will no longer report false errors for:

  • Setter in VisualStateManager che fanno riferimento a proprietà senza specificare il tipo, ad esempio .Setters in VisualStateManager referencing properties without specifying type, e.g. .
  • ResourceDictionaries unito non di cui è stato eseguito il wrapping <'elemento> ResourceDictionary.MergedDictionariesMerged ResourceDictionaries not wrapped into <ResourceDictionary.MergedDictionaries> element

Esempio:Example:

    <Application>
    <Application.Resources>
        <ResourceDictionary Source='Colors.xaml'/>
        <Style TargetType='Label'> ... <Style>
    </Application.Resources>
    </Application>

Dati di esempio XAMLXAML Sample Data

In questa versione è stata ulteriormente migliorata la funzionalità dei dati in fase di progettazione del finestra di progettazione XAML introducendo un nuovo modo per aggiungere dati di esempio generici agli elementi ItemsControls.In this release we've further enhanced the XAML Designer's design-time data capability by introduced a new way to add generic sample data to your ItemsControls. Questa funzionalità funziona solo per ListBox, ListView e DataGrid solo in WPF.This feature works for ListBox, ListView and DataGrid in WPF only.

  • I dati di esempio possono essere abilitati d:ItemSource='{d:SampleData}' impostando in ListBox, ListView o DataGridSample Data can be enabled by setting d:ItemSource='{d:SampleData}' on your ListBox, ListView or DataGrid
  • Il controllo verrà popolato nella finestra di progettazione solo con un set di 5 elementi che corrispondono ai DataTemplate e ai percorsi di associazioneThis will populate your control in the designer only with a set of 5 items that match your DataTemplates and Binding Paths
  • È possibile modificare il numero di elementi generati usando ItemCount la proprietà , ad esempio: d:ItemSource='{d:SampleData ItemCount=3}'You can change how many items are generated using the ItemCount property, for example: d:ItemSource='{d:SampleData ItemCount=3}'
ListBox showing Sample Data.
Dati di esempio abilitati in un controllo ListBoxSample Data enabled on a ListBox

finestra di progettazione XAML azioni rapideXAML Designer Quick Actions

  • Una nuova lampadina vicino all'angolo di un controllo selezionato nel finestra di progettazione XAML può essere usata per accedere rapidamente alle proprietà comunemente modificate per tale controllo.A new lightbulb near the corner of a selected control in the XAML Designer can be used for quick access to commonly edited properties for that control.

  • I controlli supportati includono:Supported controls include:

    • UWP: Border, Button, Canvas, CheckBox, ComboBox, Grid, HyperlinkButton, Image, ListBox, ListView, NavigationView, RadioButton, Slider, StackPanel, TextBlock, TextBoxUWP: Border, Button, Canvas, CheckBox, ComboBox, Grid, HyperlinkButton, Image, ListBox, ListView, NavigationView, RadioButton, Slider, StackPanel, TextBlock, TextBox
    • WPF: Border, Button, Canvas, CheckBox, ComboBox, Grid, Image, Label, ListBox, ListView, StackPanel, TextBlock, TextBoxWPF: Border, Button, Canvas, CheckBox, ComboBox, Grid, Image, Label, ListBox, ListView, StackPanel, TextBlock, TextBox
  • Questa funzionalità è disponibile per la piattaforma UWP, WPF .NET Core e WPF .NET Framework (con la funzionalità di anteprima "New WPF finestra di progettazione XAML for .NET Framework" abilitata nella finestra di dialogo delle opzioni).This feature is available for UWP, WPF .NET Core, and WPF .NET Framework (with the “New WPF XAML Designer for .NET Framework” preview feature enabled in the options dialog).

  • finestra di progettazione XAML Azioni rapide include anche un modello di estendibilità.XAML Designer Quick Actions also has an extensibility model. Per altre informazioni sulla creazione di azioni personalizzate, vedere l'articolo finestra di progettazione XAML estendibilità di GitHub

For more information on creating your own actions, see the [XAML Designer Extensibility GitHub](https://github.com/microsoft/xaml-designer-extensibility)
XAML Designer Quick Actions on a Button
finestra di progettazione XAML azioni rapide su un pulsanteXAML Designer Quick Actions on a Button

Strumenti MVVM per XAMLMVVM Tooling for XAML

In questa versione è stata introdotta una lampadina nell'editor XAML per creare un modello di visualizzazione.In this release, we’ve introduced a lightbulb in the XAML Editor to create a view-model. Questa lampadina viene eressa sull'elemento radice del documento XAML quando si rileva che nel progetto viene usato un framework MVVM.This lightbulb is surfaced on the root element of the XAML document when we detect that an MVVM framework is being used in the project. La finestra di dialogo consente la personalizzazione dello spazio dei nomi del modello di visualizzazione generato, della cartella e del modello di visualizzazione di base ereditato.The dialog allows for customization of the generated view-model namespace, folder and inherited base view-model.

Create view-model lightbulb experience
Creare un'esperienza di lampadina del modello di visualizzazioneCreate view-model lightbulb experience

La lampadina imposta anche il modello di visualizzazione generato come x:DataType(Xamarin.Forms) o d:DataContext(tutte le altre piattaforme) per il documento XAML, consentendo all'utente di sfruttare ulteriormente le lampadine dell'editor XAML per generare comandi e proprietà associate nei modelli di visualizzazione.The lightbulb also sets the generated view-model as the x:DataType(Xamarin.Forms) or d:DataContext(all other platforms) for the XAML document, allowing the user to further leverage the XAML Editor lightbulbs to generate bound properties and commands in view-models.

Strumenti di Service FabricService Fabric Tools

Questa funzionalità introduce StartupServices.xml file in una progettazione Service Fabric appliazione.This feature introduces StartupServices.xml file in a Service Fabric Application design. Questo file ospita la sezione DefaultServices di ApplicationManifest.xml.This file hosts DefaultServices section of ApplicationManifest.xml. Con questa implementazione, i parametri relativi alla definizione DefaultServices e Service vengono spostati da un ApplicationManifest.xml esistente a un nuovo file denominato StartupServices.xml.With this implementation, DefaultServices and Service definition-related parameters are moved from existing ApplicationManifest.xml to this new file called StartupServices.xml. Questo file viene usato in ogni funzionalità (Compilazione/Ricompilazione/F5/CTRL+F5/Pubblica) in Visual Studio.This file is used in each functionalities (Build/Rebuild/F5/Ctrl+F5/Publish) in Visual Studio.

Problemi principali corretti in questa versioneTop Issues Fixed in this Release

  • Risolto un problema per cui gli sviluppatori C# che richiamano il comando Edit.SmartBreakline rimuoverebbero tutto il contenuto nella funzione di accesso di Property.Fixed an issue where C# developers invoking the Edit.SmartBreakline command would remove all the content in the accessor of Property.
  • Risolto un problema per cui gli sviluppatori che aggiornano un'impostazione codestyle dove la modifica viene applicata in tutte le istanze Visual Studio anziché solo all'interno della cartella desiderata.Fixed an issue where developers updating a codestyle setting would have the change apply in all Visual Studio instances instead of just inside the desired folder.
  • L'icona "Applica modifiche al codice" viene visualizzata ogni volta che viene aperto un progetto natvie o unito.The "Apply Code Changes" icon was showing whenever a natvie or merged project was opened. Verrà abilitata solo quando uno sviluppatore avvia il debug.It will only be enabled once a developer starts debugging.
  • Correzione delle modifiche di rilievo in AudioUnitPropertyIDTypeFixes breaking change in AudioUnitPropertyIDType
  • È stato risolto un problema a causa del quale gli sviluppatori che unit test framework UWP non erano in grado di eseguire test su dispositivi remoti.Fixed an issue where developers using UWP unit test framework were unable to run tests on remote devices.

Dalla Developer CommunityFrom Developer Community

Developer Community un elenco completo di tutti gli articoli spedibili in questa versione.Developer Community has a complete list of all of items shipping in this release.

Ecco alcuni dei principali problemi rilasciati nella versione 16.10:Here are some of the top voted issues released in 16.10:


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