Condividi tramite


Logo di Visual Studio Note sulla versione di Visual Studio 2022 versione 17.11

Funzionalità

Versione 17.11 rilasciata il 13 agosto 2024


Questa versione è incentrata sui miglioramenti di **qualità della vita** per tutti gli sviluppatori e i carichi di lavoro. Quando si usa Visual Studio, ci si vuole sentire autonomi e produttivi. Ecco perché le caratteristiche di qualità della vita sono così importanti: rendono la codifica un'esperienza fluida e piacevole, senza inutili problemi e mal di testa. Speriamo che ti piacerà questo aggiornamento.
Produttività Dalla community
Trovare il codice che si sta cercando Ticket di feedback
Correzione per la sequenza temporale di CodeLens Ticket di feedback
Aggiornamenti alla creazione di richieste pull
Revisioni del codice più significative Ticket di feedback
Tasti di scelta rapida familiari Ticket di feedback
GitHub Copilot Dalla community
Fare riferimento ai metodi in GitHub Copilot
Comprendere i simboli con GitHub Copilot Ticket di feedback
GitHub Copilot è sempre più intelligente
GitHub Copilot è ancora più sicuro
Perfezionare i suggerimenti di GitHub Copilot
Denominazione di elementi semplificati
Inspecezione di variabili intelligenti di intelligenza artificiale
Espressioni di punti di interruzione generate dall'intelligenza artificiale
Debug e diagnostica Dalla community
Più facile correggere le eccezioni asincrone Ticket di feedback
Profilatura più veloce e coerente
Profila codice esterno con facilità Ticket di feedback
Miglioramento del debug in Arm64
Debug di Blazor WebAssembly
Aggiungere automaticamente punti di interruzione al gruppo predefinito Ticket di feedback
Visualizzatore IEnumerable espressivo
Punti di interruzione C++ più veloci
IDE Dalla community
Non perdere mai l'installazione di un componente Ticket di feedback
Rimanere aggiornati e sicuri Ticket di feedback
Nuovi modelli di Teams Toolkit
Autenticazione utente migliorata
Web Dalla community
Individuare le route dinamiche dell'API Web Ticket di feedback
Pacchetti NPM in Esplora soluzioni
Giochi Dalla community
Aggiungere modelli di classe al motore Unreal Ticket di feedback
Aggiungi modulo unreal Engine Ticket di feedback
Aggiungi plug-in unreal Engine
Barra degli strumenti di Unreal Engine
.NET Dalla community
Esplora risorse rinnovate Ticket di feedback
C++ Dalla community
Build Insights QoL Update
Eseguire il debug dei progetti CMake in Linux Ticket di feedback
Eseguibile Clang-Tidy personalizzato
Correzioni di bug principali Dalla community
Errore previsto dell'espressione TS1109 (TS) nel file Razor Ticket di feedback
La copia/incolla avanzata del codice sorgente C# in Office ha esito negativo Ticket di feedback
Errore errato con puntatore nella classe alla variabile membro Ticket di feedback
MSVC v19.37+ generazione di codice non corretta per le espressioni aritmetiche Ticket di feedback
C4506 (nessuna definizione per la funzione inline) segnalata erroneamente per la specifica del modello... Ticket di feedback
Overload dei tipi integrali mancanti per le funzioni cmath Ticket di feedback
GitHub Copilot ha un pulsante "Riferimenti" non tradotto Ticket di feedback
Dopo l'aggiornamento a VS 17.10 le dimensioni dei file con estensione ilk sono aumentate notevolmente Ticket di feedback
La jump list di Visual Studio non aggiunge altre soluzioni aperte di recente Ticket di feedback

Nota

Vedere l'elenco completo di tutte le richieste di funzionalità segnalate dall'utente e le correzioni di bug apportate in questa versione.

Produttività

Trovare il codice che si sta cercando

Restringere una ricerca di codice dall'intera soluzione al documento corrente o al progetto corrente.

Si ha mai la sensazione di vedere troppi risultati nella ricerca di codici? Restringere lo stato attivo con le opzioni di ambito appena aggiunte in Ricerca codice.

Per l'esperienza di ricerca del codice predefinita e ogni filtro, è ora possibile impostare l'ambito su Intera soluzione, Progetto correnteo Documento corrente e attivare o disattivare l'inclusione di file esterni.

È possibile impostare ambiti diversi per filtri diversi. Ad esempio, l'esperienza predefinita può essere impostata per esaminare 'intera soluzione e i membri possono essere impostati in modo che esamino solo il documento corrente. Le selezioni verranno mantenute oltre la sessione corrente.

Ambito della ricerca centralizzata

Nota

Questa funzionalità deve essere abilitata in Strumenti -> Gestire le funzionalità di anteprima

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Correzione per la sequenza temporale di CodeLens

Correzione per rispettare la configurazione della sequenza temporale di CodeLens per visualizzare le informazioni corrette.

La sequenza temporale di CodeLens ora rispetta la configurazione della sequenza temporale per visualizzare le informazioni corrette. Questa correzione risolve un problema per cui la sequenza temporale non rispettava i mesi impostati nell'anteprima delle modifiche al passaggio del mouse del file.

Anteprima del passaggio del mouse su CodeLens

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Aggiornamenti alla creazione di richieste pull

Miglioramenti continui all'esperienza di creazione delle richieste pull.

È stata migliorata l'esperienza di creazione di una richiesta pull con la selezione del ramo di destinazione, i conteggi dei commit e altre correzioni di stabilizzazione. Inoltre, ora creiamo automaticamente collegamenti agli elementi di lavoro menzionati nei commit che fanno parte della richiesta pull.

Schermata Crea richieste pull

Revisioni del codice più significative

Visualizzare i commenti delle richieste pull di Azure DevOps e GitHub direttamente nel file di lavoro.

È stata semplificata la visualizzazione dei commenti delle richieste pull di GitHub e Azure DevOps direttamente nel file di lavoro in Visual Studio. È ora possibile rimanere nel contesto, apportare le modifiche al codice necessarie e interagire con i suggerimenti dei colleghi senza cambiare contesto nel browser.

Nuovi miglioramenti

Abilitare il flag di funzionalità, i commenti della richiesta pull, eseguire il checkout di qualsiasi ramo con un ramo di richiesta pull attivo e fare clic su Mostra commenti nei file in InfoBar.

Visualizzare la notifica dei commenti delle richieste pull

I miglioramenti più recenti includono un supporto migliore per @ menzioni e riferimenti agli elementi di lavoro, miglioramenti visivi al margine di attenzione e commento, l'aggiunta di avatar, una migliore sincronizzazione con il server e un punto di ingresso aggiuntivo nella finestra modifiche git.

Nota

Questa funzionalità deve essere abilitata in Strumenti -> Gestire le funzionalità di anteprima

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione. E prendi questo sondaggio per migliorare ulteriormente la funzionalità.

Tasti di scelta rapida familiari

Alcuni tasti di scelta rapida comuni corrispondono ora a quelli in altri IDE popolari.

Quando ci si sposta tra diversi IDE ed editor, può essere frustrante dover imparare di nuovo i tasti di scelta rapida. Sono state apportate alcune modifiche ad alcuni tasti di scelta rapida predefiniti per renderli più familiari e per preservare la memoria muscolare.

Attiva/Disattiva commenti per la riga

È stato possibile attivare o disattivare i commenti per la riga in Visual Studio per molto tempo, ma i tasti di scelta rapida predefiniti erano Ctrl+K, Ctrl+/. Sono stati ora aggiunti Ctrl+/ come tasti di scelta rapida alternativi, che corrispondono all'impostazione predefinita in molti altri IDE ed editor.

Attiva/Disattiva commenti per la riga

Nota

Si noti che per le tastiere non inglesi, il collegamento potrebbe essere diverso.

Apri il riquadro comandi

O Ricerca funzionalità, come viene chiamato in Visual Studio. I tasti di scelta rapida predefiniti per questa funzionalità sono ora Ctrl+Shift+P, che dovrebbero essere familiari agli utenti di VS Code per aprire il riquadro comandi.

Ricerca funzionalità

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

GitHub Copilot

Fare riferimento ai metodi in GitHub Copilot

GitHub Copilot Chat consente ora di fare riferimento a metodi, classi e funzioni inline. Questa funzionalità consente di fornire più contesto a GitHub Copilot, che a sua volta consente di fornire risposte più accurate con GitHub Copilot con una comprensione ancora più approfondita della soluzione.

Facendo riferimento a metodi, classi e funzioni direttamente all'interno della chat, è possibile fornire un contesto specifico che consenta a GitHub Copilot di comprendere meglio il codice e il problema a portata di mano. Questa funzionalità consente di fornire un contesto più completo a GitHub Copilot, consentendogli di fornire risposte più precise ottenendo una conoscenza più approfondita della codebase.

Simboli di GitHub Copilot

Come fare riferimento ai simboli in GitHub Copilot Chat

Per fare riferimento ai simboli, è sufficiente usare il simbolo # seguito dal nome del metodo, della classe o della funzione a cui si vuole fare riferimento.

Provare a chiedere a GitHub Copilot Chat

Provare a rivolgere a GitHub Copilot Chat domande come:

  1. Ho un metodo di test denominato #methodName. Come è possibile assicurarsi che venga eseguito correttamente?
  2. Puoi aiutarmi a comprendere le differenze tra le funzioni di #methodName1 e #methodName2?
  3. Dov'è l'output della funzione #methodName usata nel codice e qual è il suo scopo?
  4. /explain #methodName

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

Comprendere i simboli con GitHub Copilot

GitHub Copilot consente di comprendere i simboli in chiamate diverse senza la codebase.

GitHub Copilot è ora integrato nella descrizione comando sui simboli al passaggio del mouse per fornire riepiloghi generati dall'intelligenza artificiale del simbolo selezionato. Questa opzione è disponibile sia per gli sviluppatori C# sia per gli sviluppatori C++. Questa funzionalità consente agli sviluppatori di comprendere le descrizioni di vari simboli in chiamate diverse all'interno della codebase. Passando il puntatore del mouse su un simbolo e selezionando l'opzione Altre informazioni nella descrizione comando al passaggio del mouse, GitHub Copilot può generare la documentazione per il simbolo selezionato.

Documentazione in tempo reale

Con l’uuso di LLMs, GitHub Copilot migliora la documentazione di codice esistente o mancante fornendo spiegazioni dettagliate e contesto all'interno delle descrizioni comandi al passaggio del mouse.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

GitHub Copilot è sempre più intelligente

GitHub Copilot include ora il contesto dall'intero repository e può eseguire ricerche nel Web.

I sottoscrittori di GitHub Copilot Enterprise in Visual Studio possono ora usare GitHub Copilot Chat per ottenere risposte arricchite con il contesto dall'intero repository e dai risultati della ricerca Bing.

GitHub Copilot è sempre più intelligente

Ottenere risposte dall'intera codebase

GitHub Copilot Chat può ora rispondere a domande con la comprensione del repository completo, non solo le schede aperte. Indicizzare il repository in GitHub.com e quindi porre una domanda che indica @github. È possibile porre domande come @github dove viene implementata la limitazione della frequenza?

Cercare con il contesto del Web

La chat di GitHub Copilot può anche cercare in Bing per trovare informazioni al di fuori della conoscenza generale o della codebase. Quando si menziona @github, GitHub Copilot deciderà in modo intelligente quando usare Bing. È possibile porre domande come @github qual è la versione LTS più recente di Node.js?

La ricerca Bing è disponibile solo se abilitata da un amministratore. Per altri dettagli, vedere Abilitazione delle funzionalità di GitHub Copilot Enterprise o leggere la documentazione.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

GitHub Copilot è ancora più sicuro

I clienti di GitHub Copilot Business per impedire l'uso di file o repository specificati per informare i suggerimenti di completamento del codice creati da GitHub Copilot.

Esclusione di contenuto per GitHub Copilot è disponibile per i clienti di GitHub Copilot Business e GitHub Copilot Enterprise per impedire che i file o i repository specificati vengano utilizzati per informare i suggerimenti di completamento del codice forniti da GitHub Copilot.

Esclusione del contenuto di GitHub Copilot

Proteggi il codice

GitHub Copilot escluderà ora il contenuto dei file interessati. Sarà disponibile per completamenti, inline, chat e tutte le altre esperienze di GitHub Copilot in Visual Studio.

Configura le esclusioni di contenuto

Per gli amministratori del repository e i proprietari dell'organizzazione, l'esclusione del contenuto sarà configurabile per file, cartelle, tipi di file e altro ancora. Altre informazioni su Configurazione delle esclusioni di contenuto per GitHub Copilot nella documentazione di GitHub Copilot.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

Affinare i suggerimenti di GitHub Copilot

Con l’integrazione di GitHub Copilot in Visual Studio, le esperienze tra completamenti e chat sono in fase di miglioramento. Questo miglioramento mira a semplificare il flusso di lavoro, semplificando l’affinamento dei suggerimenti di completamento e le conversazioni di transizione tra interfacce diverse.

Con l’integrazione di GitHub Copilot in Visual Studio, le esperienze tra completamenti e chat sono in fase di miglioramento. Questo miglioramento mira a semplificare il flusso di lavoro, semplificando l’affinamento dei suggerimenti di completamento e le conversazioni di transizione tra interfacce diverse.

Affinare i completamenti di GitHub Copilot con la chat inline

È ora disponibile un maggiore controllo sui suggerimenti forniti da GitHub Copilot. Invece di accettare o ignorare un suggerimento, è ora possibile riprovare. Questa funzionalità consente di modificare e curare i suggerimenti proattivi forniti da GitHub Copilot aggiungendo contesto o modificando il completamento.

Per iniziare, modificare i completamenti:

Completamento di GitHub Copilot in Inline

Affinare la richiesta con la chat inline:

Chat inline di GitHub Copilot aggiornata

Spostare la chat inline alla finestra di chat per un maggiore contesto

Conservare la cronologia della chat inline spostandola nella finestra di chat. Questa funzionalità consente di mantenere un record della conversazione e di continuare la finestra di chat in base alle esigenze su uno schermo più grande.

Selezionare Continua nella finestra di chat...

Spostare la chat inline alla finestra di chat

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

Denominazione di elementi semplificati

È possibile usare GitHub Copilot per generare suggerimenti di denominazione per gli identificatori in C++.

GitHub Copilot può ora generare suggerimenti di denominazione per gli identificatori (variabili, metodi o classi) in base al modo in cui viene usato l'identificatore e lo stile del codice.

Rinominare i suggerimenti

Per provarlo, è necessaria una sottoscrizione di GitHub Copilot attiva. Passare a qualsiasi variabile da rinominare, fare clic con il pulsante destro del mouse su ->Rename (Tastiera: Ctrl+R, Ctrl+R). Si noterà un'icona sparkle di GitHub Copilot su cui è possibile fare clic o che si può attivare/disattivare per generare suggerimenti di denominazione.

Questa funzionalità è disponibile per C#, C++ e altri linguaggi.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

Inspecezione di variabili intelligenti di intelligenza artificiale

Ottimizzare il flusso di lavoro di debug con l'ispezione integrata delle variabili di intelligenza artificiale.

L'ispezione e l'analisi dei valori da variabili Locali, Auto e DataTips non è mai stata più semplice con Chiedi a GitHub Copilot in Visual Studio. È sufficiente fare clic con il pulsante destro del mouse su qualsiasi valore per ottenere informazioni dettagliate basate sull'intelligenza artificiale in merito a errori, risultati imprevisti o anomalie, senza mai uscire dall'ambiente di sviluppo integrato.

Ricerca di variabili di intelligenza artificiale

Questa funzionalità migliorerà significativamente la velocità di risoluzione dei problemi analizzando le variabili in tempo reale all'interno dell'ambiente di sviluppo integrato ogni volta che emergono valori imprevisti.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

Espressioni di punti di interruzione generate dall'intelligenza artificiale

Usare espressioni generate dall'intelligenza artificiale per inserire punti di interruzione condizionali o punti di traccia in C++.

Espressioni generate dall'intelligenza artificiale per punti di interruzione condizionali e punti di analisi sono ora supportate in C++. GitHub Copilot analizza il codice e offrirà espressioni di punti di interruzione dettagliate, semplificando il processo di debug.

CPP per i suggerimenti per i punti di interruzione di intelligenza artificiale

Quando si posiziona il cursore all'interno del testo della condizione per un punto di interruzione condizionale/punto di analisi nella finestra delle impostazioni del punto di interruzione, GitHub Copilot offrirà tempestivamente suggerimenti di espressione generati dall'intelligenza artificiale in base al codebase. È possibile selezionare la condizione più adatta alle proprie esigenze per l'inserimento del punto di interruzione condizionale o del punto di analisi.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot

Debug e diagnostica

Più facile correggere le eccezioni asincrone

Il debugger si interrompe ora sulle eccezioni del metodo asincrono rilevate dal codice framework.

Il debug di codice asincrono, in particolare nei framework come ASP.NET, può essere complicato a causa del rischio che le eccezioni vengano generate attraverso limiti asincroni.

Ora, con Il debugger di Visual Studio si interrompe automaticamente quando un metodo async Task genera un'eccezione al codice del framework.

Interruzione in eccezioni asincrone

In questo modo è possibile identificare e diagnosticare facilmente i problemi nelle applicazioni ASP.NET, con conseguente maggiore velocità dei cicli di debug e una maggiore produttività.

Si noti che si tratta solo di progetti .NET 9 e più recenti.

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Profilatura più veloce e coerente

Lo strumento di strumentazione nel profiler ora memorizza la selezione di destinazione tra le esecuzioni.

Lo strumento di strumentazione mantiene ora la selezione di destinazione tra le esecuzioni offrendo un vantaggio significativo migliorando la continuità delle sessioni di profilatura.

Con questo miglioramento, è possibile mantenere la destinazione specificata in più esecuzioni di strumentazione, eliminando la necessità di attività di selezione ripetitive.

La destinazione di strumentazione persiste

Profilare codice esterno con facilità

Il profiler supporta la decompilazione automatica per le librerie .NET, consentendo una semplice profilatura del codice esterno.

Il profiler di Visual Studio offre ora la decompilazione automatica per le librerie .NET negli scenari in cui il codice sorgente non è disponibile. Grazie alla decompilazione automatica del codice durante la ricerca dell'origine, anche senza simboli caricati o percorsi di file esatti, è possibile ottenere informazioni dettagliate sulla struttura e sui problemi di prestazioni del codice.

Decompilazione dell'origine del profiler

Questa funzionalità è particolarmente vantaggiosa quando si tratta di codice esterno non utente, poiché consente di analizzare e ottimizzare le prestazioni dell'applicazione in modo efficace, migliorando così il flusso di lavoro di sviluppo.

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Miglioramento del debug in Arm64

Il debugger di Visual Studio supporta le applicazioni AnyCPU manifestate per l'esecuzione come arm64.

Visual Studio supporta in modo nativo la compilazione e il debug di app Arm64 nei processori basati su Arm. Sfortunatamente, le applicazioni compilate con l'impostazione AnyCPU in esecuzione in un computer Arm64, per impostazione predefinita usano l'emulazione x64. Anche se le funzionalità dell'emulatore x64 sono state espanse, gli scenari di CPU Arm più efficienti sono supportati quando le applicazioni vengono eseguite in modo nativo.

Per supportare meglio il comportamento nativo previsto, l'aggiornamento di Windows 24H2 introduce una nuova <impostazione supportataArchitectures> per i file manifesto dell'app. Gli sviluppatori .NET possono includere un elenco di architetture supportate (amd64 o arm64), segnalando in modo esplicito che un'applicazione compilata con l'impostazione AnyCPU deve essere eseguita in modo nativo usando ARM64 CLR nei dispositivi Arm64.

Con questa versione Visual Studio può leggere queste nuove voci di manifesto all'avvio dell'applicazione, consentendo l'avvio del debug in base all'architettura corretta.

Debug di WebAssembly Blazor

Anteprima dell'esperienza di debug migliorata per le app WebAssembly Blazor destinate a .NET 9 o versione successiva.

Visual Studio offre ora un'anteprima di un'esperienza di debug migliorata per le app WebAssembly Blazor destinate a .NET 9 o versione successiva:

  • I tipi di dati visualizzati nel debugger corrispondono ora ai tipi di dati .NET previsti.
  • I membri del tipo e la visibilità dei membri usano le icone previste.
  • Lo stack di chiamate visualizzato viene pulito per visualizzare solo lo stack di chiamate .NET e rispetta correttamente l'impostazione Just My Code.
  • La finestra moduli è ora supportata.
  • Il supporto della valutazione delle espressioni nella finestra Immediata e per gli orologi e i punti di interruzione condizionali è stato espanso e migliorato.

Miglioramenti al debug di Blazor

Per abilitare la nuova esperienza di debug in anteprima:

  • Abilitare l'impostazione Abilita nuovo debugger .NET 9+ Mono.
  • Installare la versione più recente di .NET 9 SDK.
  • Aggiornare l'app Blazor in modo che sia destinata a .NET 9.

Limitazioni note:

  • Il ricaricamento rapido durante il debug non è ancora completamente funzionante. Questo verrà risolto in un aggiornamento futuro.

Aggiungere automaticamente punti di interruzione al gruppo predefinito

Organizzare i punti di interruzione per la risoluzione dei problemi rapidi con i gruppi di punti di interruzione predefiniti in Visual Studio.

È ora possibile contrassegnare il gruppo di punti di interruzione selezionato come predefinito, assicurandosi che tutti i punti di interruzione appena aggiunti vengano inclusi automaticamente in tale gruppo.

Gruppo di punti di interruzione predefinito

Questo miglioramento semplifica la gestione e l'organizzazione dei punti di interruzione, offrendo un debug semplice durante l'analisi di più problemi.

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Visualizzatore IEnumerable espressivo

La funzionalità di espressione modificabile nel visualizzatore IEnumerable consente la modifica diretta e la visualizzazione dell'espressione LINQ nel debugger di Visual Studio.

Il debugger di Visual Studio offre ora una funzionalità di espressione modificabile nel visualizzatore IEnumerable, un potente miglioramento per gli sviluppatori che usano le raccolte.

Panoramica

Con questa nuova funzionalità, durante la visualizzazione di una raccolta o di un set di dati, è possibile modificare direttamente la casella di testo delle espressioni nella parte superiore della finestra di dialogo con le espressioni LINQ desiderate. Il visualizzatore viene aggiornato in tempo reale, riflettendo la modifica dei dati risultante dalla query.

Casella di testo Espressione modificabile

Potenziali applicazioni

La funzionalità di espressione modificabile facilita il debug di set di dati densi e le manipolazioni complesse della raccolta. È possibile applicare facilmente diversi filtri o ordinare gli ordini alle raccolte in base alle esigenze. Sperimentando trasformazioni e filtri dei dati direttamente all'interno del debugger di Visual Studio, è possibile semplificare il flusso di lavoro di sviluppo e ottenere un debug più efficiente. Ecco un esempio per provare autonomamente:

Esempio di casella di testo Espressione modificabile

Punti di interruzione C++ più veloci

Ottimizzare il debug con prestazioni avanzate dei punti di interruzione condizionali in C++.

Le prestazioni dei punti di interruzione condizionale in C++ sono state notevolmente migliorate tramite un'implementazione rielaborata.

La valutazione iniziale indica un miglioramento delle prestazioni di almeno il 35% nella versione 17.10 e del 70% nella versione 17.11 P2, riducendo il tempo di esecuzione da 80 secondi a 21 secondi oltre 80.000 iterazioni.

Prestazioni del punto di interruzione condizionale C++

Come illustrato nel video, il lato sinistro mostra le prestazioni dei punti di interruzione condizionali nella versione 17.9, mentre il lato destro mostra le prestazioni nella versione 17.10 e successive.

IDE

Non perdere mai l'installazione di un componente

Usando i file *.vsconfig, è possibile assicurarsi che il team disponga di tutti i componenti e le estensioni necessari installati dalla soluzione.

Molti team usano file *.vsconfig per standardizzare le installazioni di Visual Studio dei team. I file *.vsconfig possono essere inseriti in un repository o nella directory della soluzione di un progettoe Visual Studio rileverà automaticamente se i componenti specificati nel file *.vsconfig sono mancanti.

Estensione privata in .vsconfig

Se mancano, verrà visualizzata una notifica, ad esempio quella mostrata di seguito.

InfoBar in Esplora soluzioni che richiede di installare componenti ed estensioni mancanti

Sono stati apportati due miglioramenti a questa esperienza in Visual Studio 2022 versione 17.11 Anteprima 1.

  1. Prima di tutto, Visual Studio è ora in grado di rilevare se le estensioni ospitate in locale o in rete non sono presenti nell'installazionee, in tal caso, verrà richiesto di installarle. In precedenza, rispetto alle estensioni, Visual Studio era in grado di riconoscere solo se mancavano le estensioni del Marketplace.
  2. In secondo luogo, Visual Studio richiederà nuovamente la notifica in determinate situazioni, ad esempio se il file *.vsconfig è stato modificato perché vengono aggiunti nuovi componenti o estensioni. In precedenza, la notifica veniva visualizzata solo fino a quando non si agiva su di essa; a quel punto veniva eliminata per sempre.

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Rimanere aggiornati e sicuri

Mantenere Visual Studio aggiornato e sicuro eseguendo la registrazione in Microsoft Updates.

Mantenere il software aggiornato con cadenza regolare è una procedura consigliata per garantire la sicurezza.

A partire da agosto 2024, gli aggiornamenti della sicurezza di Visual Studio saranno disponibili per gli utenti della community tramite il canale Microsoft Update, che fa parte del sistema Windows Update. Gli utenti dello SKU della community che si registrano in questo canale di aggiornamento riceveranno e installeranno automaticamente gli aggiornamenti mensili della sicurezza di Visual Studio in modo automatico e in background quando il computer è inattivo, in modo da semplificare l'aggiornamento e la sicurezza. Altre informazioni sono disponibili in questo post di blog.

Windows Update - Opzioni avanzate

Questa funzionalità è un'estensione della soluzione di aggiornamenti dell'amministratore, progettata per aiutare le organizzazioni a garantire la sicurezza. Molte aziende, tra cui Microsoft, usano questa soluzione per distribuire automaticamente centinaia di migliaia di aggiornamenti della sicurezza ogni mese.

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Nuovi modelli di Teams Toolkit

Teams Toolkit ha aggiunto nuovi modelli di app Teams per un'esperienza di sviluppo migliore di Teams.

Teams Toolkit offre ora un modello di Teams vuoto per connettersi ai progetti esistenti o usarlo come punto di partenza per le nuove app di Teams.

  • Iniziare con questo modello vuoto per creare qualsiasi app di Teams.
  • Se si vuole aggiungere funzionalità di Teams al progetto esistente, aggiungere un'app di Teams vuota al progetto e quindi connettere due progetti apportando semplici modifiche, seguire https://aka.ms/Config-Teams-app.

Creare un'app di Teams vuota

Teams Toolkit supporta le autenticazioni per l'app Risultati della ricerca dall'API.

Creare l'autenticazione di Teams

Autenticazione utente migliorata

Visual Studio usa ora il broker autenticazione di Windows altrimenti noto come WAM come meccanismo di autenticazione predefinito.

Visual Studio ora usa il Web Account Manager (WAM) come meccanismo di autenticazione principale. Questa integrazione non solo semplifica l'esperienza di autenticazione per Visual Studio, ma migliora anche la sicurezza delle credenziali.

Ecco come si presenta la nuova esperienza WAM:

Finestra di dialogo Seleziona account WAM che mostra gli account Windows disponibili

In che modo questo influisce sulla tua esperienza?

L'uso di WAM come esperienza di autenticazione predefinita offre molti vantaggi, tra cui:

  • l'integrazione di Windows: oltre a ridurre il numero complessivo di richieste di autenticazione, è ora possibile selezionare gli account Windows esistenti anziché immettere ripetutamente le credenziali.
  • Migliore protezione dei token: i token di aggiornamento sono protetti meglio in quanto ora sono associati al dispositivo.
  • Supporto per le funzionalità di sicurezza più recenti:
    • Sfrutta le funzionalità avanzate del sistema operativo come le chiavi Windows Hello e FIDO.
    • Accedi alle funzionalità più recenti e più avanzate di Microsoft Entra ID e ai criteri di accesso condizionale.

Web

Individuare le route dinamiche dell'API Web

Esplora endpoint è stato aggiornato per individuare gli endpoint in fase di esecuzione.

Quando si usano ASP.NET API Web core, è possibile usare Esplora endpoint per visualizzare e interagire con gli endpoint.

Esplora endpoint individua gli endpoint in modo statico per visualizzare il set iniziale di endpoint. Esistono alcuni endpoint che non possono essere individuati in modo statico. Ad esempio, qualsiasi endpoint definito in un progetto di libreria di classi è un esempio. Esistono altri modi per registrare gli endpoint che non possono essere individuati in modo statico.

Quando si esegue o si esegue il debug dell'API Web, Visual Studio individua anche le route in fase di esecuzione e le aggiunge a Esplora endpoint.

Esplora endpoint

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Pacchetti NPM in Esplora soluzioni

Vedere i pacchetti NPM visualizzati nel nodo Dipendenze in Esplora soluzioni.

Sono state unificate le esperienze NPM disponibili nei progetti ASP.NET e JavaScript e TypeScript. Anche i pacchetti NPM verranno quindi elencati in Esplora soluzioni per progetti JavaScript e TypeScript.

Pacchetti NPM in Esplora soluzioni

Questa è la stessa esperienza che si ottiene per NuGet, ma è disponibile ora anche per NPM.

Giochi

Aggiungere modelli di classe Unreal Engine

Aggiungere modelli di classe unreal Engine comuni al progetto con la nuova aggiungi classe.

È ora possibile aggiungere altri modelli di classe Unreal Engine comuni al progetto con la nuova finestra di dialogo Aggiungi classe. Questa finestra di dialogo fornisce un elenco di modelli di classe unreal Engine comuni che è possibile aggiungere al progetto. È anche possibile aggiungere la classe a un modulo scelto.

Per iniziare, fare clic con il pulsante destro del mouse sul progetto in Esplora soluzioni e selezionare Pubblica oppure selezionare Aggiungi>articolo Unreal Engine. Nella finestra di dialogo Aggiungi nuovo elemento, selezionare Modulo Unreal Engine per aprire la finestra di dialogo Aggiungi classe.

Aggiungere classe Unreal Engine

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Aggiungere modulo Unreal Engine

Aggiungere moduli unreal Engine al progetto con il nuovo modulo Aggiungi modulo.

È ora possibile aggiungere moduli unreal Engine al progetto con il nuovo dialogo Aggiungi modulo.

Per iniziare, fare clic con il pulsante destro del mouse sul progetto in Esplora soluzioni e selezionare Pubblica oppure selezionare Aggiungi>articoli Unreal Engine. Nella finestra di dialogo Aggiungi nuovo elemento selezionare Modulo unreal engine vuoto per aprire la finestra di dialogo Aggiungi modulo.

Aggiungere modulo Unreal Engine

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Aggiungere plug-in Unreal Engine

Aggiungere plug-in di Unreal Engine al progetto con il nuovo plug-in Aggiungi plug-in.

È ora possibile aggiungere plug-in Unreal Engine al progetto con la nuova finestra di dialogo Aggiungi plug-in.

Per iniziare, fare clic con il pulsante destro del mouse sul progetto in Esplora soluzioni e selezionare Pubblica oppure selezionare Aggiungi>articolo Unreal Engine. Nella finestra di dialogo Aggiungi nuovo elemento selezionare Plug-in Unreal Engine per aprire la finestra di dialogo Plug-in Unreal Engine.

Aggiungere plug-in Unreal Engine

Barra degli strumenti di Unreal Engine

Accedere rapidamente alle azioni correlate a Unreal Engine tramite una barra degli strumenti dedicata.

La nuova barra degli strumenti di Unreal Engine consente di accedere rapidamente alle azioni correlate al motore Unreal. La barra degli strumenti è disponibile quando si dispone di un progetto Unreal Engine caricato in Visual Studio. La barra degli strumenti include le azioni seguenti:

  1. Collegamento rapido ai processi di Unreal Engine
  2. Ripetere l'analisi della cache dei progetti
  3. Accesso rapido al log di Unreal Engine
  4. Pagina di configurazione di Unreal Engine di accesso rapido per Visual Studio

Barra degli strumenti di Unreal Engine

.NET

Esplora risorse rinnovato

Il nuovo Esplora risorse rende più semplice che mai gestire i file resx in .NET.

In questa versione di Visual Studio viene introdotta un'interfaccia utente di Esplora risorse rinnovata per soddisfare meglio le esigenze dello sviluppatore .NET moderno.

In questo aggiornamento sono stati apportati i miglioramenti seguenti:

  1. Visualizzazione multi-risorse: è ora possibile caricare più file e visualizzare tutte le localizzazioni contemporaneamente all'interno della stessa visualizzazione.
  2. Ricerca e filtra: è stata aggiunta la ricerca per semplificare la visualizzazione di risorse in soluzioni di grandi dimensioni.
  3. Commenti: ogni traduzione di una risorsa ha ora un proprio commento, e sono tutti visibili contemporaneamente nella griglia dati. Cercare l'icona a forma di piccolo triangolo nell'angolo di ogni cella con un commento.
  4. Avvisi: avvisi di convalida segnaposto e di traduzione mancante.
  5. Accessibilità e interfaccia utente: è stata migliorata la compatibilità con le utilità per la lettura dello schermo e la tecnologia per l'accessibilità, è stata aggiunta la funzionalità di zoom alla griglia dati e ora è possibile usare Vs Theming per l'editor (inclusa la modalità scura).

Miglioramento di Datagrid

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione. E prendi questo sondaggio per migliorare ulteriormente la funzionalità.

C++

Aggiornamento di Build Insights QoL

Aggiunge vari miglioramenti della qualità della vita a C++ Build Insights.

In questo aggiornamento sono state aggiunte modifiche di qualità della vita all'integrazione di Build Insights per C++. È ora possibile filtrare i risultati della traccia di Informazioni dettagliate di compilazione in base al progetto. Per i risultati in ogni riga, verrà ora visualizzato il percorso relativo e il nome del file anziché il percorso completo. È stato migliorato anche il raggruppamento dei risultati nella visualizzazione File inclusi.

Aggiornamento di Build Insights QoL

Eseguire il debug dei progetti CMake in Linux

Eseguire il debug degli script CMake per i progetti destinati a Linux usando WSL e SSH.

È stato aggiunto il supporto per il debugger CMake nei progetti CMake destinati a Linux tramite WSL o SSH. Il debugger CMake consente di eseguire il debug degli script CMake e dei file CMakeLists.txt tramite il debugger di Visual Studio.

Per avviare una sessione di debug di CMake, impostare un punto di interruzione nel file CMakeLists.txt e quindi passare a Project > Configure Cache with CMake Debugging (Configura cache con debug CMake).

Debugger CMake

📣Vedere il ticket di funzionalità per condividere il feedback e continuare la conversazione.

Eseguibile Clang-Tidy personalizzato

Integrare lo strumento personalizzato clang-tidy in tutti i progetti.

È ora possibile usare un eseguibile clang-tidy personalizzato per tutti i progetti. In questo modo è possibile eseguire clang tidy in singoli progetti con regole personalizzate, senza basarsi sul file eseguibile clang-tidy predefinito.

Questa impostazione globale consente di integrare senza problemi le regole clang-tidy personalizzate, senza la necessità di sovrascrivere il file eseguibile clang-tidy esistente.

Per attivare questa funzionalità, passare a Proprietà di configurazione>Analisi codice>Clang-Tidy e immettere il percorso direttamente o usare l'opzione Sfoglia nella proprietà Directory degli strumenti Clang-Tidy. Salvare le modifiche e ricompilare l'app per rendere effettivo il nuovo eseguibile.

Eseguibile Clang-Tidy personalizzato


Versione 17.11.6

Data di rilascio: 12 novembre 2024

Avvisi di sicurezza risolti CVE
Vulnerabilità di esecuzione di codice remoto .NET CVE-2024-43498
Vulnerabilità Denial of Service .NET CVE-2024-43499
Elevazione dei privilegi di Visual Studio CVE-2024-49044

Versione 17.11.5

Data di rilascio: 8 ottobre 2024

Correzioni di bug principali Dalla community
Note sulla versione di .NET per iOS/tvOS/macOS/macCatalyst.
Aggiornamento di Windows 11 SDK (10.0.26100.0) installato da Visual Studio alla build di manutenzione di ottobre 2024.
Errore MSB4057 in Visual Studio 2022 17.11.0 Ticket di feedback
Errore durante l'aggiunta della classe al progetto. Ticket di feedback
Problemi relativi ai componenti MEF con AWS Toolkit con l'estensione Amazon Q. Ticket di feedback
Avvisi di sicurezza risolti CVE
Vulnerabilità Denial of Service .NET in System.Security.Cryptography.Cose, System.IO.Packaging, System.Runtime.Caching CVE-2024-43483
Vulnerabilità Denial of Service .NET in System.IO.Packaging CVE-2024-43484
Vulnerabilità Denial of Service .NET in System.Text.Json 6.0.x e 8.0. CVE-2024-43485
Vulnerabilità Denial of Service nel servizio agente di raccolta di Visual Studio CVE-2024-43603
Vulnerabilità di elevazione dei privilegi in Visual Studio C++ Redistributable Installer CVE-2024-43590

Versione 17.11.4

Data di rilascio: 17 settembre 2024

Correzioni di bug principali Dalla community
System.NullReferenceException durante la copia di file all'interno di Esplora soluzioni. Ticket di feedback
È stato risolto un problema per cui la risposta agli eventi della soluzione può causare la lettura dello stato incompleto dai progetti.
Correzione dell'errore di compilazione remota di ArgumentNullException iOS quando si passa da versioni diverse dell'SDK (incluso Xamarin). Ticket di feedback
VISUAL Studio include ora MAUI 8.0.82 (SR8.2).
Visualizzare sempre l'errore e arrestare il debug quando si usa Debug.Restart (CTRL+MAIUSC+F5). Ticket di feedback
È stato risolto un problema che causava l'esito negativo delle compilazioni .NET dopo l'installazione di .NET SDK 9.0.100-rc.1 o versione successiva.
Questa correzione risolve lo scenario in cui l'aggiunta di un account GitHub senza licenza copilot inserisce il copilot in uno stato di errore, che causa l'indisponibilità del copilota per l'uso. Ticket di feedback
L'aggiunta di un punto di interruzione condizionale causa un arresto anomalo incondizionato. Ticket di feedback
Esplora risorse non può aprire file resx. Ticket di feedback
Vai alla definizione non funziona. Ticket di feedback

Versione 17.11.3

Data di rilascio: 10 settembre 2024

Correzioni di bug principali Dalla community
Non è possibile pubblicare applicazioni .NET Framework dopo l'aggiornamento 17.11.0. Ticket di feedback
Impossibile associare a Mac dopo l'aggiornamento di Visual Studio 17.11.0. Ticket di feedback
17.11.0 L'output degli errori interrompe i test.
Avvisi di sicurezza risolti CVE
Vulnerabilità di esecuzione remota del codice del provider OLE DB di SQL Server Native Client CVE-2024-35272

Versione 17.11.2

Data di rilascio: 27 agosto 2024

Correzioni di bug principali Dalla community
Correzione Programma di installazione di Visual Studio errore durante l'installazione di PackageId:AndroidPlatformMAUI2.

Versione 17.11.1

Data di rilascio: 20 agosto 2024

Correzioni di bug principali Dalla community
Visual Studio 2022 (64 bit) versione 17.11.0 Preview 6.0 danneggia lo stack per arrestare il debug di un'applicazione nativa. Ticket di feedback
Xamarin Profiler è stato deprecato e rimosso da Visual Studio.
Xamarin.Android Designer è pianificato per la deprecazione e verrà rimosso in un aggiornamento futuro.

Suggerimento

Se sono presenti funzionalità che si desidera visualizzare negli aggiornamenti futuri di Visual Studio, inviare un ticket di funzionalità.

Nota

La roadmap illustra le priorità e la direzione per il futuro di Visual Studio, quindi assicurarsi di controllarla.

Nota

Questo aggiornamento può includere un nuovo software Microsoft o di terze parti concesso in licenza separatamente, come indicato nelle comunicazioni di terze parti o nella relativa licenza associata.

Da tutti noi del team, grazie per aver scelto Visual Studio. In caso di domande, contattare Microsoft su Twitter o Developer Community.

Buona codifica!
Team di Visual Studio