2019LogoNote sulla versione di Visual Studio 2019 versione 16.1



Requisiti di sistema | della community | degli sviluppatori Compatibilità Compatibilità | delle condizioni | di licenza della cronologia delle versioni del codice | | distribuibile Blog | Whats New in Visual Studio Docs


Nota

Questa non è la versione più recente di Visual Studio. Per scaricare la versione più recente, visitare il sito di Visual Studio .



Novità di Visual Studio 2019 versione 16.1

Intervallo di tempo del supporto

Questa versione non è più supportata. Per altre informazioni sul supporto di Visual Studio, vedere Criteri di supporto per Visual Studio 2019.

Fare riferimento alla versione più recente delle note sulla versione o visitare il sito di Visual Studio per scaricare la versione supportata più recente di Visual Studio 2019.

Rilasci di Visual Studio 2019 versione 16.1

Blog di Visual Studio 2019

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


Release Notes IconVisual Studio 2019 versione 16.1.6

Data di rilascio: 09 luglio 2019

Notifiche di avvisi di sicurezza

CVE-2019-1077 Vulnerabilità dell'estensione durante l'aggiornamento automatico di Visual Studio

Esiste una vulnerabilità di elevazione dei privilegi quando il processo di aggiornamento automatico dell'estensione di Visual Studio non esegue in modo corretto determinate operazioni sui file. Un utente malintenzionato che riesce a sfruttare questa vulnerabilità potrebbe eliminare file in posizioni arbitrarie. Per sfruttare questa vulnerabilità, un utente malintenzionato deve ottenere l'accesso senza privilegi a un sistema vulnerabile. L'aggiornamento della sicurezza risolve la vulnerabilità proteggendo le posizioni in cui l'aggiornamento automatico dell'estensione di Visual Studio esegue operazioni sui file.

CVE-2019-1075 Vulnerabilità di spoofing in ASP.NET Core

Esiste una vulnerabilità di spoofing in ASP.NET Core che potrebbe causare un reindirizzamento aperto. Un utente malintenzionato potrebbe sfruttare questa vulnerabilità per reindirizzare un utente specifico a un sito Web dannoso. Per sfruttare la vulnerabilità, un utente malintenzionato potrebbe inviare un collegamento contenente un URL appositamente creato e convincere l'utente a selezionare il collegamento.

L'aggiornamento della sicurezza risolve la vulnerabilità correggendo il modo in cui gli URL vengono analizzati da ASP.NET Core. I dettagli sono disponibili nelle Note sulla versione di .NET Core.

CVE-2019-1113 La deserializzazione XOML WorkflowDesigner consente l'esecuzione di codice

Un file XOML che fa riferimento a determinati tipi può causare l'esecuzione di codice casuale quando il file XOML viene aperto in Visual Studio. Ora è stata implementata una restrizione sui tipi che possono essere usati nei file XOML. Se viene aperto un file XOML contenente uno dei tipi che non sono più autorizzati, un messaggio spiega che il tipo non è autorizzato.

Per altre informazioni, vedere https://support.microsoft.com/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml.


Release Notes IconVisual Studio 2019 versione 16.1.5

Data di rilascio: 2 luglio 2019

###Summary dei problemi risolti in Visual Studio 2019 versione 16.1.5


Release Notes Icon Visual Studio 2019 versione 16.1.4

Data di rilascio: 25 giugno 2019

Riepilogo dei problemi risolti in Visual Studio 2019 versione 16.1.4


Release Notes IconVisual Studio 2019 versione 16.1.3

Data di rilascio: 11 giugno 2019

Riepilogo dei problemi risolti in Visual Studio 2019 versione 16.1.3


Release Notes IconVisual Studio 2019 versione 16.1.2

Data di rilascio: 4 giugno 2019

Riepilogo dei problemi risolti in Visual Studio 2019 versione 16.1.2


Release Notes IconVisual Studio 2019 versione 16.1.1

Data di rilascio: 24 maggio 2019

Riepilogo dei problemi risolti in Visual Studio 2019 versione 16.1.1


Release Notes IconVisual Studio 2019 versione 16.1

Data di rilascio: 21 maggio 2019

Riepilogo delle novità di Visual Studio 2019 versione 16.1

IDE

  • Visual Studio IntelliCode è ora disponibile a livello generale e viene installato con qualsiasi carico di lavoro che supporta C#, C++, TypeScript/JavaScript o XAML.
  • È stato aggiunto il supporto per la compatibilità del monitor.
  • Sono disponibili nuove correzioni di codice per C#.
  • È stata aggiunta l'opzione Elementi usati più di recente alla ricerca in Visual Studio.

Debugger

  • Sono stati implementati miglioramenti dell'autenticazione del collegamento all'origine.
  • È stato aggiunto il server di simboli nuget.org all'elenco di server di simboli predefinito.
  • L'anteprima di Debug spostamento cronologico include ora il supporto dell'esecuzione di istruzioni di eccezione.

Estendibilità

  • È stata eliminata la necessità di file RESX in progetti VSIX (aggiornamento BuildTools).
  • Il modello di progetto VSIX usa ora la nuova versione dell'SDK.

Prestazioni

  • Esperienza di ottimizzazione per gli utenti per migliorare il tempo di caricamento di soluzioni di dimensioni molto grandi.
  • Gli autori di modelli possono aggiungere tag personalizzati ai modelli.
  • Supporto CodeLens per interfaccia utente personalizzata.
  • Sono stati resi disponibili aggiornamenti per l'implementazione del protocollo di server di linguaggio.
  • Comportamento aggiornato per il passaggio tra soluzioni, cartelle e altre visualizzazioni.

C++

F#

  • Sono stati resi disponibili miglioramenti per le prestazioni e molte correzioni di bug per F# e strumenti F#.

.NET

  • Le nuove funzionalità di produttività .NET includono la pulizia del codice con un clic per progetti e soluzioni, una nuova scelta rapida da tastiera per Attiva/Disattiva commento per il blocco, il refactoring per lo spostamento dei tipi in altri spazi dei nomi.
  • Gli utenti possono ora clonare codice da un URI SSH tramite la schermata di clonazione nella finestra di avvio.
  • Le funzionalità aggiunte per la produttività .NET includono il completamento di IntelliSense per tipi non importati, un comando di aggiunta/rimozione di commenti a riga singola, l'esportazione di stili di denominazione in editorconfig e una nuova impostazione per lo stile del codice per scegliere l'uso di direttive using all'interno o all'esterno degli spazi dei nomi.
  • Sono state implementate alcune aggiunte per gli strumenti .NET SDK per supportare progetti Windows Form e WPF per .NET Core 3.0, insieme ad alcuni miglioramenti per le prestazioni e correzioni di bug.
  • Visual Studio SDK v16.0 rilasciato in NuGet.
  • È disponibile un'anteprima della finestra di progettazione XAML per lo sviluppo di .NET Core 3.0 WPF.

Xamarin

Principali problemi risolti in Visual Studio 2019 versione 16.1

Dettagli delle novità di Visual Studio 2019 versione 16.1

  • IntelliCode è ora disponibile a livello generale e viene installato con qualsiasi carico di lavoro che supporta C#, C++, TypeScript/JavaScript o XAML.
  • Le funzionalità in anteprima di IntelliCode, tra cui i modelli personalizzati, il supporto per C++/TS/JS e l'inferenza di Editorconfig, sono disabilitate per impostazione predefinita. Per abilitarli, passare a Strumenti > Opzioni > IntelliCode.
  • È stato rimosso il modello Editorconfig (IntelliCode) dalla Creazione guidata nuovo elemento. Per creare un editorconfig dedotto, fare clic con il pulsante destro del mouse sul percorso desiderato in Esplora soluzioni e scegliere Aggiungi nuovo editorConfig (IntelliCode).To create an inferred Editorconfig, click on the desired location in Esplora soluzioni and choose Add > New EditorConfig (IntelliCode).
  • È possibile usare la finestra di avvio per clonare codice da un repository online tramite SSH.
Clone with SSH on start window
Clonazione di codice con SSH nella finestra di avvio
  • Visual Studio IntelliCode è installato per impostazione predefinita quando si installa un carico di lavoro che supporta C#, XAML o C++.
    • I modelli di base XAML e C# verranno attivati per impostazione predefinita.
    • Le funzionalità di anteprima, ad esempio il training del modello personalizzato e il completamento degli argomenti, possono essere abilitate tramite Strumenti > Opzioni > IntelliCode.
  • Supporto per il riconoscimento del monitoraggio aggiunto
  • Nuove correzioni di codice disponibili per C#.
  • Aggiunto il supporto per il riconoscimento per monitor per la finestra PropertyBrowser basata su WinForms di Visual Studio. Richiede l'installazione della versione di .NET Framework 4.8 RTM nel computer.
  • Il collegamento all'origine può ora usare l'autenticazione di Windows per il supporto del controllo del codice sorgente TFS in locale.
  • Server di simboli nuget.org aggiunto all'elenco di server di simboli predefinito

Project

  • Il pulsante per passare dalla visualizzazione di Esplora soluzioni a un'altra mostra ora in modo coerente un menu a discesa di tutte le visualizzazioni possibili.
Solution switching
Cambio di visualizzazione in Esplora soluzioni
  • Tempo di caricamento migliorato per soluzioni di dimensioni molto elevate. Il miglioramento varia in base alle dimensioni delle soluzioni.

  • Rimossa la finestra di dialogo Converti in Conversione file > . Questa funzionalità è stata precedentemente deprecata in Visual Studio 2015.

  • Regole di convalida aggiornate per gli schemi task.vs.json e launch.vs.json e aggiunta di descrizioni per le proprietà.

  • Aggiunta del supporto per il debug remoto di Linux tramite un programma personalizzato con launch.vs.json.

Estendibilità

  • Gli utenti possono ora usare la versione più recente di Microsoft.VisualStudio.SDK per fare riferimento a Visual Studio 2019 nelle estensioni. Ricordarsi di usare solo questa versione dell'SDK se la versione minima supportata di Visual Studio è la 16.0.
  • La creazione di nuovi progetti VSIX conterrà ora la versione 16.0 del pacchetto NuGet Microsoft.VisualStudio.SDK.
  • Gli utenti possono ora aggiungere tag ai modelli di progetto per abilitare la classificazione e i filtri nella finestra di dialogo Nuovo progetto di Visual Studio 2019. Gli utenti possono anche scegliere tra tag predefiniti o tag personalizzati di tipo di progetto, piattaforma e linguaggio.
Template tagging
Assegnazione di tag ai modelli
  • Le estensioni di CodeLens possono ora visualizzare contenuto arbitrario dell'interfaccia utente nei popup dei dettagli di CodeLens.

  • Protocollo di server di linguaggio aggiornato con:

    • Supporto per i buffer previsti per abilitare LSP per diff inline e file Razor in LiveShare.
    • Supporto per diagnostica non necessaria.
    • Supporto per textDocument/typeDefinition.
    • Supporto per textDocument/foldingRange (struttura).
  • Necessità di file .resx in progetti VSIX rimossa ( aggiornamento BuildTools)

  • Il pacchetto NuGet Microsoft.VSSDK.BuildTools offre ora un file con estensione resx vuoto durante la compilazione se non è presente un file con estensione resx con la proprietà MergeWithCTO. Poiché la maggior parte delle estensioni non usano o non richiedono un file con estensione resx per eseguire il merge, ciò consentirà di mantenere pulito il progetto.

  • Le modifiche alla sensibilità per monitor potrebbero influire su alcune estensioni. Altre informazioni in Supporto per la sensibilità per monitor per estensioni Visual Studio.

Editor

  • La ricerca in Visual Studio visualizzerà ora con stato attivo le tre azioni usate più di recente richiamate tramite la ricerca in Visual Studio, come illustrato in questo mockup di esempio Nota: le icone e gli elementi di riga specifici non sono stati completamente aggiornati in questo mock-up.
Visual Studio Search
Mockup della ricerca in Visual Studio

C++

  • È possibile usare l'installazione del sottosistema Windows locale per Linux con C++ in modo nativo in Visual Studio senza alcuna configurazione o connessione SSH aggiuntiva.
Windows Subsystem for Linux
Sottosistema Windows per Linux
  • AddressSanitizer è ora integrato in progetti Visual Studio per Linux nel sottosistema Windows per Linux.
ASan integration
Integrazione di ASan
  • Gli utenti possono ora separare il computer di compilazione remoto dal computer di debug remoto quando la destinazione è Linux in progetti MSBuild e CMake.
  • Le descrizioni comando della finestra Informazioni rapide contengono ora un collegamento per cercare documenti online in modo da ottenere altre informazioni sul costrutto di codice. In caso di codice con sottolineatura rossa, il collegamento nella finestra Informazioni rapide cercherà l'errore online.
  • Il codice all'interno delle descrizioni comando della finestra Informazioni rapide è ora a colori in base ai colori nell'editor.
Colorized code in Quick Info tooltips
Codice colorato nelle descrizioni comando della finestra Informazioni rapide
New Code Analysis quick fixes
Nuove correzioni rapide per l'analisi del codice
  • Miglioramenti all'Editor impostazioni CMake, tra cui supporto per il sottosistema Windows per Linux (WSL) e configurazioni da cache esistenti, modifiche alle radici di installazione e compilazione predefinite e supporto per le variabili di ambiente nelle configurazioni CMake per Linux.
Improvements to the CMake Settings Editor
Miglioramenti all'editor delle impostazioni di CMake
  • La registrazione migliorata per le connessioni remote rende più semplice diagnosticare i problemi relativi allo sviluppo multipiattaforma.
Improved logging for remote connections
Miglioramento della registrazione per le connessioni remote
  • È ora possibile separare il computer di compilazione remoto dal computer di debug remoto quando la destinazione è Linux (specifico per i progetti MSBuild, presto disponibile per CMake).
  • La barra modelli può immettere voci nel menu a discesa in base alla creazione di istanze del modello specifico nella codebase.
New Template Bar dropdown menu
Nuovo menu a discesa Barra modello
  • IntelliCode C++ è ora incluso nella casella e può essere abilitato in Strumenti > Opzioni > IntelliCode > Generale. Questa versione di IntelliCode è migliorata in termini di precisione e include il supporto per le funzioni libere.
  • L'integrazione di CMake supporta ora la toolchain Clang/LLVM per i progetti destinati a Windows e/o Linux. È ora possibile compilare, modificare ed eseguire il debug dei progetti CMake che usano Clang, MSVC o GCC.
CMake integration supports the Clang/LLVM toolchain
L'integrazione di CMake supporta la toolchain Clang/LLVM
  • Lampadine per #include mancanti installabili da vcpkg e completamento automatico dei pacchetti disponibili per la direttiva CMake find_package.
Autocompletion of available packages
Completamento automatico dei pacchetti disponibili
  • Aggiornamento della versione di CMake fornita con Visual Studio alla versione 3.14. Questa versione aggiunge il supporto integrato per i generatori MSBuild destinati a progetti di Visual Studio 2019, nonché API di integrazione IDE basate su file.

  • Le pagine delle proprietà generali per i progetti C++ sono state riviste e alcune opzioni sono state incluse in una nuova pagina Avanzate. La pagina Avanzate include anche proprietà aggiuntive per l'architettura preferita del set di strumenti, librerie di debug, la versione secondaria del set di strumenti MSVC e compilazioni Unity (jumbo).

  • Le funzionalità di anteprima C++20 seguenti sono state aggiunte all'implementazione della libreria standard C++, disponibile in /std:c++latest:

    • starts_with() e ends_with() per basic_string/basic_string_view.
    • contains() per i contenitori associativi.
    • remove(), remove_if() e unique() per list e forward_list ora restituiscono size_type.
    • shift_left() e shift_right() aggiunti a <algorithm>.
  • Le funzionalità di anteprima C++20 seguenti sono state implementate nel compilatore C++, disponibile in /std:c++latest:

    • Capacità aumentata di trovare modelli di funzione tramite la ricerca dipendente dall'argomento di espressioni di chiamata di funzione con argomenti di modello espliciti (P0846R0).
    • Inizializzazione designata (P0329R4), che consente a membri specifici di essere selezionati nell'inizializzazione aggregata, ad esempio usando la sintassi Type t { .member = expr }.
  • Il supporto lambda è stato rivisto e interessa ora un numero elevato di bug duraturi. Questa modifica è abilitata per impostazione predefinita quando si usa /std:c++latest. In altre modalità di linguaggio /std:c++* e nella modalità predefinita il nuovo parser può essere abilitato tramite /experimental:newLambdaProcessor, ad esempio /std:c++17 /experimental:newLambdaProcessor.

  • Documentazione di CMake nell'editor

  • Gli elenchi di completamento e le informazioni rapide per i comandi CMake predefiniti, le variabili e le proprietà rendono più semplice la modifica dei file CMakeLists.txt.

Tooltip info for add_subdirectory CMake command
Informazioni della descrizione comando per il comando CMake add_subdirectory

F# e strumenti F#

Questa è una versione relativamente minore per il linguaggio e gli strumenti F#, ma include comunque alcune importanti novità. Come per l'aggiornamento di Visual Studio 16.0, anche questa versione è incentrata sulle prestazioni degli strumenti dell'editor.

Compilatore F# ed F# Interactive
  • È stato aggiunto il supporto di P/Invoke in F# Interactive in .NET Core (6544)
  • È stata aggiunta un'ottimizzazione del compilatore per Span<'T> se usato in un ciclo for (6195)
  • È stata aggiunta un'ottimizzazione per evitare allocazioni Some estranee per le opzioni F# in diversi scenari (6532)
  • È stato modificato l'ordine di esecuzione delle espressioni usate nella creazione di un'istanza di record anonimi in modo che sia dall'alto verso il basso invece che alfabetico, per riflettere l'esperienza corrente con record normali (6487)
  • È stato corretto un bug a causa del quale espressioni letterali di dimensioni molto grandi o dichiarazioni di struttura di dimensioni molto grandi possono causare un overflow dello stack del compilatore in fase di compilazione (6258)
  • È stato corretto un bug a causa del quale non vengono più attivati punti di interruzione durante il debug di una funzione con record anonimi (6512)
  • È stato corretto un bug a causa del quale record anonimi passati a costrutti in cui è previsto un parametro obj provocano l'arresto anomalo del compilatore (6434)
  • È stato corretto un bug a causa del quale i cicli for var expr1 to expr2 do ... possono restituire una sintassi stranamente valida (che viene rimossa) (6586)
  • È stato corretto un bug a causa del quale non è possibile usare in modo appropriato record anonimi con eventi (6572)
  • È stato corretto un bug presente da tempo a causa del quale vengono generati parser di dimensioni estremamente elevate in FsLexYacc (oltre 100 milioni di righe) (5967
  • È stato corretto un problema presente da tempo nel componente plug-in del provider di tipi del compilatore che può creare le condizioni per una perdita di memoria causata da un provider di tipi (6409)
  • È stato aggiunto da Saul Rennison il supporto di --pathmap per il compilatore F#, che risolve un problema a causa del quale l'eseguibile risultante da una compilazione include percorsi assoluti di file di origine nella risorsa file di firma F# incorporata (5213)
  • È stata aggiunta da ncave un'ottimizzazione per l'espressione AST in F# che ne migliora l'utilizzo tramite altri strumenti e ambienti (ad esempio Fable) (6333)
  • È stata aggiunta da Steffen Forkmann un'ottimizzazione per l'attraversamento di informazioni durante la risoluzione di membri (4457)
  • È stato aggiunto da Gauthier Segay un miglioramento ai messaggi di errore in modo che quando l'implementazione di un tipo è priva degli override necessari, viene segnalato un elenco di questi override mancanti (4982)
Strumenti F#
  • L'elenco a discesa Framework di destinazione per progetti F# in .NET SDK include ora valori per tutti i valori di .NET Core, .NET Standard e .NET Framework disponibili per semplificare la migrazione a .NET Core da .NET Framework in .NET SDK
  • È stato corretto un bug a causa del quale la ridenominazione di parametri di tipo generico genera nomi preceduti da doppio apice inverso (5389)
  • È stato risolto un problema presente da tempo a causa del quale vengono ricreate istanze dei provider di tipi in modo ridondante, provocando allocazioni eccessive nel tempo (5929)
  • È stato risolto un problema presente da tempo a causa del quale la lettura del linguaggio intermedio alloca inutilmente 20 MB in un breve periodo di tempo (6403)
  • È stato corretto un bug da Vasily Kirichenko a causa del quale il metodo GetToolTipText nel servizio di compilazione F# può mostrare la stessa firma XML per diversi overload di membro (6244)
Infrastruttura open source di F#

Infine, è stata migliorata l'esperienza per i contributi attraverso le modifiche seguenti:

  • Completamento della compilazione dal processo di origine in modo che la libreria principale e il compilatore F# possano essere creati con il repository di compilazione di origine .NET Core
  • Rimozione della dipendenza da netstandard1.6 in modo che l'intera codebase abbia come destinazione netstandard2.0 e net472 in modo uniforme
  • Aggiunta di un file .vsconfig alla radice del repository in modo che chi contribuisce usando Visual Studio non debba essere a conoscenza di tutti i componenti che devono essere installati dall'inizio
  • Riscrittura del file LEGGIMI del progetto in modo da rimuovere informazioni che possono generare confusione, aggiungendo un argomento di avvio rapido con informazioni su come iniziare a contribuire, nel tentativo di offrire maggiore completezza nei messaggi sui tipi di modifiche che Microsoft vuole introdurre

Produttività .NET

  • È ora disponibile il completamento sperimentale di IntelliSense per tipi non importati. Gli utenti ricevono ora suggerimenti di IntelliSense per i tipi nelle dipendenze nel progetto anche se non hanno ancora aggiunto l'istruzione di importazione al file. Attivare questa opzione in Strumenti > Opzioni > Editor > di testo C# > IntelliSense.
Intellisense completion for unimported types
Completamento di IntelliSense per tipi non importati
  • È ora disponibile un comando di aggiunta/rimozione di commenti a riga singola tramite scelta rapida da tastiera (CTRL+K,/). Questo comando aggiunge o rimuove un commento a riga singola a seconda che la selezione sia o meno già commentata.
  • Possibilità di esportare gli stili di denominazione con il pulsante "Genera editorconfig" disponibile in Strumenti Opzioni Editor > di testo C# > Stile codice.>>
  • È ora possibile usare una nuova regola di stile per il codice del file con estensione editorconfig per richiedere o impedire l'uso di direttive using all'interno di uno spazio dei nomi. Questa impostazione verrà esportata anche quando si usa il pulsante "Genera editorconfig" disponibile in Strumenti Opzioni Editor > di testo C# > Stile codice.>>
Editorconfig rule for usings outside/inside namespaces
Regola di EditorConfig per l'uso di direttive using all'interno/esterno degli spazi dei nomi
Tools Options setting for usings inside/outside namespace
Impostazione in Opzioni nel menu Strumenti per l'uso di direttive using all'interno/esterno dello spazio dei nomi
  • La colonna "Tipologia" di Trova tutti i riferimenti ora include opzioni di filtro aggiuntive e riconosce gli spazi dei nomi e i tipi.
Find All References Kind column has more filter options
La colonna Tipologia in Trova tutti i riferimenti include più opzioni di filtro
  • È stata aggiunta una correzione del codice per le istruzioni if di suddivisione o unione.
Split or merge if statements
Istruzioni If di divisione o merge
  • È stata aggiunta una correzione del codice per il wrapping delle espressioni binarie.
Wrap binary expressions
Wrapping delle espressioni binarie
  • È ora possibile accedere a un elenco di completamento regex tramite il menu di Intellisense (CTRL+BARRA SPAZIATRICE) dall'interno di una stringa regex. Gli elenchi di completamento includono anche una descrizione in linea delle operazioni eseguite dal suggerimento.
Regex completion offered in Intellisense with (Ctrl + space)
Completamento di Regex
  • È stata aggiunta una correzione del codice per la rimozione del seal di una classe.
Unseal a class codefix
Rimozione del seal di una classe
  • È ora possibile usare la pulizia del codice con un solo clic per progetti e soluzioni. È possibile fare clic con il pulsante destro del mouse sui progetti o sulla soluzione in Esplora soluzioni e scegliere "Esegui pulizia del codice".
Right-click to run code cleanup over the entire solution
Clic con il pulsante destro del mouse per eseguire la pulizia del codice nell'intera soluzione
You will see a dialog box while cleanup is applied to each file
Viene visualizzata una finestra di dialogo mentre viene applicata la pulizia a ogni file
  • È ora possibile usare una finestra di dialogo di refactoring per lo spostamento del tipo in uno spazio dei nomi o in una cartella. Posizionare il cursore sul nome della classe e premere CTRL+. per aprire il menu dei refactoring e delle azioni rapide e selezionare 'Sposta in spazio dei nomi'. Verrà avviata una finestra di dialogo in cui è possibile selezionare lo spazio dei nomi di destinazione in cui si vuole spostare il tipo.
Place cursor in class name and type (Ctrl+.) to view refactorings
Posizionare il cursore sul nome e sul tipo della classe (CTRL+.) per visualizzare i refactoring
Select the destination namespace
Selezionare lo spazio dei nomi di destinazione
  • L'interruttore Blocca commento/Rimuovi commento è ora disponibile tramite la scelta rapida da tastiera (CTRL+MAIUSC+/) o modifica > commento blocco avanzato>. Questo comando consentirà di aggiungere o rimuovere commenti per il blocco a seconda dell'elemento selezionato.
Toggle block comment with (Ctrl+Shift+/)
Attivare/disattivare i commenti per il blocco con CTRL+MAIUSC+/
  • È ora disponibile una correzione del codice per rendere scrivibili i campi dello struct di sola lettura. Posizionare il cursore sul nome dello struct, premere CTRL+. per aprire il menu dei refactoring e delle azioni rapide e selezionare 'Imposta come scrivibili i campi di sola lettura'.
  • La correzione del codice per aggiungere un campo privato da un costruttore e viceversa è più facile da individuare e verrà visualizzata quando si seleziona qualsiasi parte del nome del campo. Questo refactoring ora offre anche tutti i costruttori possibili.

Anteprima della finestra di progettazione XAML per lo sviluppo WPF di .NET Core 3.0

  • È disponibile un'anteprima anticipata della finestra di progettazione XAML per gli sviluppatori che compilano applicazioni .NET Core 3.0 WPF in Visual Studio. Molte funzionalità in fase di progettazione non saranno disponibili in questa anteprima. Poiché si tratta di un'anteprima anticipata, se si verificano problemi, ad esempio arresti anomali del sistema, è possibile inviare commenti e suggerimenti per Visual Studio per permettere al team di migliorare l'esperienza delle versioni future.
  • Con ogni aggiornamento di Visual Studio 2019 Microsoft continuerà a implementare altre funzionalità precedentemente disponibili nella finestra di progettazione XAML per le applicazioni .NET Framework WPF.

Strumenti di .NET SDK

In questa versione Microsoft si è impegnata a fondo per sbloccare l'uso di WPF su .NET Core:

  • È stato risolto un problema a causa del quale viene visualizzata una finestra di dialogo di errore ogni volta che si aggiunge un nuovo elemento a un progetto .NET Core Windows Form o WPF (4486).
  • Supporto per file XAML in progetti .NET SDK (1467), che include molti interventi più piccoli con lo scopo di ottenere esperienze identiche ai progetti .NET delle versioni precedenti.
  • Supporto delle voci di menu di scelta rapida per WinForms in .NET Core (#137): Windows Form, Controllo utente, Componente e Classe.
  • Supporto delle voci di menu di scelta rapida per WPF in .NET Core (#137): Finestra, Pagina, Controllo utente, Dizionario risorse.
  • La finestra Origini dati è ora abilitata per i progetti .NET SDK, per consentire scenari di gestione di dati comuni per Windows Form (4479.

In questa versione è stata aggiunta separatamente anche una vasta gamma di altre correzioni:

  • I progetti .NET SDK supportano ora file .razor (4468).
  • È stato aggiunto testo della Guida accessibile alla pagina delle proprietà Debug, consentendone la lettura tramite utilità per la lettura dello schermo (4568).
  • È stata aggiunta un'impostazione che permette di disabilitare il doppio clic per aprire un file di progetto (4493).
  • L'opzione di menu contestuale per modificare un file di progetto non include più il nome del progetto, per correggere un problema a causa del quale il menu contestuale può diventare troppo largo a causa di un nome di progetto molto lungo (1492).
  • È stato corretto un bug a causa del quale un'origine dati con l'interfaccia utente Data binding crea due file .datasource (4485).
  • È stato corretto un bug a causa del quale l'uso di file collegati può provocare errori della verifica di aggiornamento (4580).
  • Sono stati corretti numerosi bug che interessano la risoluzione dei pacchetti e la visualizzazione del rispettivo stato risolto/non risolto nel nodo delle dipendenze (2924, 4577).

È possibile visualizzare un elenco completo dei problemi risolti passando all'attività cardine 16.1 in GitHub.

Xamarin

  • Aggiornamento dell'esperienza Android predefinita all'API 28 per modelli, creazione di dispositivi, programmi di installazione e altro ancora.
  • IntelliSense in Windows mostra ora indicazioni per gli attributi in fase di progettazione durante la scrittura di XAML Xamarin.Forms.

Problemi noti

Vedere tutti i problemi e le soluzioni alternative disponibili in Visual Studio 2019 versione 16.1 facendo clic sul collegamento seguente.

Visual Studio 2019 Known Issues

Feedback e suggerimenti

I commenti degli utenti sono molto apprezzati. È 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. L'icona Feedback Icon si trova nell'angolo superiore destro. È 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à. È anche possibile usufruire gratuitamente del supporto per l'installazione con Assistenza live chat.


Blog

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


Cronologia delle note sulla versione di Visual Studio 2019

Per altre informazioni relative a versioni precedenti di Visual Studio 2019, vedere la pagina Cronologia delle note sulla versione di Visual Studio 2019.


In alto