Condividi tramite


Note sulla versione Visual Studio logo Visual Studio 2022 versione 17.12

Nota

La versione più recente di Visual Studio 2022 è la 17.14. Per altre informazioni, vedere le note sulla versione .

Siamo lieti di annunciare la disponibilità di Visual Studio 2022 v17.12. Questo aggiornamento è incentrato sulla creazione di esperienze di sviluppo fantastiche per lavorare con .NET 9 progetti e nuovi progetti AI, insieme a miglioramenti continui.

Tratti somatici

Elenco delle funzionalità per 17.12 rilasciato il 12 novembre 2024.

Produttività

Copia dall'elenco errori 📣

Copia di un errore dall'elenco errori copia ora solo la descrizione anziché l'intera riga negli Appunti.

Viene visualizzato un errore nell'elenco errori che non si sa come correggere. Quindi, si seleziona e si preme CTRL+C per copiare la descrizione per una ricerca Web. Dopo averlo incollato nel motore di ricerca, si rende conto che ha copiato tutte le intestazioni di colonna e i valori di riga anziché solo la descrizione. È ora necessario eliminare tutto tranne la descrizione dell'errore prima di poter eseguire la ricerca Web. Questo è complesso, ma ora abbiamo una correzione!

correzione della copia dell'elenco errori

Quando si copia un errore dall'elenco errori usando CTRL+C, solo la descrizione viene copiata negli Appunti. In questo modo è più semplice cercare l'errore online o condividerlo con altri utenti.

È comunque possibile copiare l'intera riga facendo clic con il pulsante destro del mouse sull'errore e scegliendo Copia riga dal menu di scelta rapida o premendo CTRL+MAIUSC+C.

Se ciò che si vuole fare con la descrizione dell'errore era eseguire una ricerca Web, premere CTRL+F1 per cercare informazioni sull'errore online.

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

Vai a riga in qualsiasi punto del 📣 ricerca codice

In Ricerca codice è ora possibile passare a una riga specifica nel documento corrente o in un altro documento specificato.

A volte si sa che c'è un problema in una determinata riga nel codice e si vuole ottenerlo rapidamente. Forse si è parlato di un errore generato alla riga 43 di un file o si vuole arrivare alla fine di un file specifico.

ricerca codice supporta ora lo spostamento rapido a una riga specifica nel codice.

Aprire ricerca codice e passare a una riga nel documento corrente usando i due punti e il numero di riga. Ad esempio, :39 passerà alla riga 39 nel file attivo.

Vai alla riga nel documento corrente

È anche possibile passare a una riga in un documento diverso usando il nome file + due punti + numero di riga. Ad esempio, Order:43 passerà alla riga 43 in Order.cs. Se non si specifica il nome di file esatto, la ricerca tenterà di trovare la corrispondenza migliore.

Vai a riga in documenti diversi

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

Ancorare la finestra Ricerca codice 📣

È ora possibile posizionare liberamente la finestra Ricerca codice con funzionalità come l'ancoraggio e la nascondere automaticamente.

Se hai bisogno di Codice o Ricerca funzionalità per rimanere al di fuori del tuo modo, ora hai più controllo sul comportamento della finestra di ricerca.

È ora possibile ancorare la finestra di ricerca ed eseguire azioni della finestra degli strumenti, ad esempio Esplora soluzioni e altre.

Ricerca ancorata al inferiore

Dopo aver aperto ricerca codice o ricerca funzionalità, fare clic sull'icona della casella in alto a destra per convertirla in una finestra degli strumenti. È possibile scegliere di ancorarlo altrove, aprirlo, nascondere automaticamente e così via. È possibile ripristinare la finestra popup non consentita facendo clic sull'icona in alto a destra.

in alto a destra della finestra, la seconda icona è l'icona della finestra degli strumenti

Abbiamo anche semplificato e pulito l'esperienza di anteprima nella ricerca. È ora presente un pulsante, indicato con un'icona a forma di occhio, per attivare e disattivare l'anteprima.

in alto a destra della finestra, la prima icona è l'icona del pannello di anteprima

Anche la posizione del pannello di anteprima verrà modificata in base alle dimensioni della finestra di ricerca.

Ricerca ancorata alla destra

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

Customize collapsed text indicator 📣

Set colori personalizzati per l'indicatore di testo compresso nell'editor Visual Studio.

È ora possibile personalizzare ulteriormente l'esperienza dell'editor con nuove opzioni per personalizzare l'indicatore di testo compresso:

 Indicatori di testo espansi e compressi personalizzati nell'editor Visual Studio

Per provare e impostare colori di primo piano e di sfondo personalizzati per ognuno di essi, passare a Strumenti di > Opzioni > Ambiente > Tipi di carattere e colori.

Voci di indicatore di testo compresso nella pagina Tipi di carattere e colori

Sono disponibili due nuovi elementi per la personalizzazione:

  • indicatore di testo compresso (compresso)
  • indicatore di testo compresso (espanso)

È possibile impostare i colori per gli indicatori compressi ed espansi in modo indipendente l'uno dall'altro usando colori predefiniti o colori personalizzati di propria scelta.

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

Aggiornare i risultati della ricerca 📣

È ora possibile aggiornare i risultati a una ricerca precedente per ottenere up-to-date corrispondenze di ricerca.

Abbiamo sentito parlare da molti utenti che è frustrante dover riaprire la finestra Trova e passare attraverso i movimenti di rollforward di una ricerca per ottenere risultati aggiornati. È possibile eseguire il refactoring di codice e verificare che tutto sia stato modificato come previsto oppure che siano state estratte alcune modifiche recenti e che sia necessaria l'operazione di ricerca recente per riflettere tali aggiornamenti.

Dopo aver completato Trova nei file, sarà ora possibile aggiornare i risultati della ricerca nella finestra. Si otterranno i risultati aggiornati senza dover ripetere la ricerca.

pulsante Aggiorna trova a destra di Interrompi ricerca

È stata riprogettata anche l'opzione Ripeti ricerca precedente per distinguerla da Refresh. Ora è rappresentato come Modifica trova con un'icona a forma di matita. Questo pulsante riaprirà comunque Trova nei file con gli stessi criteri di ricerca usati per la finestra dei risultati.

pulsante Modifica trova all'estrema destra della barra degli strumenti

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

Più spazio per la barra di scorrimento orizzontale 📣

È ora possibile controllare la visibilità degli indicatori a livello di file in CodeLens.

L'area con la barra di scorrimento orizzontale può diventare piuttosto disordinata in Visual Studio. Stiamo aiutando a semplificare la pulizia disattivando gli indicatori a livello di file in CodeLens per impostazione predefinita.

indicatore CodeLens a livello di file nel margine dell'editor inferiore

Se si desidera attivare l'opzione , è possibile trovare l'opzione Mostra indicatore codeLens a livello di file in Strumenti di opzioni > Opzioni > Editor di testo > Avanzate. Questa opzione influisce sulla visibilità dei tipi di file con il controllo CodeLens a livello di file nel margine dell'editor inferiore, ad esempio XAML, HTML e CSS e non influisce sui file che contengono CodeLens inline.

opzione per Mostra indicatore CodeLens a livello di file

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

Pulizia del codice non bloccando il salvataggio

Quando la pulizia del codice viene eseguita su Salva, ora funziona in modo non bloccante, per un'esperienza di codifica più fluida.

In precedenza, quando viene eseguita una pulizia del codice in Salva, non è possibile eseguire alcuna azione nell'IDE. Questa operazione è stata migliorata per operare in modo non bloccante.

Il processo di pulizia verrà eseguito in background e può essere annullato automaticamente se si riprende la digitazione, garantendo un'esperienza di codifica più fluida e reattiva.

Pulizia codice al salvataggio

Dipendenzetransitive a livello di soluzione nell'interfaccia utente di Gestione pacchetti

Quando si esamina la scheda Installato nell'interfaccia utente di Gestione pacchetti di Visual Studio a livello di soluzione, verranno ora visualizzati pacchetti diretti e transitivi.

In precedenza nella scheda Installato nell'interfaccia utente di gestione pacchetti di Visual Studio è possibile visualizzare dipendenze dirette e transitive solo per i progetti. Con questa versione è stata aggiunta anche la possibilità di visualizzare le dipendenze transitive a livello di soluzione.

dipendenze transitive a livello di soluzione

Dipendenzetransitive con vulnerabilità in Esplora soluzioni

Quando l'impostazione di NuGetAuditMode su all, Esplora soluzioni mostrerà indicatori per le dipendenze transitive con vulnerabilità.

Controllo NuGet, aggiunto per la prima volta in Visual Studio 17.8 (e .NET 8), fornisce avvisi durante il ripristino se i pacchetti usati dal progetto presentano vulnerabilità note.

Per altre informazioni sul controllo NuGet, incluse tutte le opzioni di configurazione, vedere la documentazione su Controllo NuGet.

Queste vulnerabilità possono trovarsi nelle dipendenze dirette e nelle dipendenze transitive (i pacchetti da cui dipendono le dipendenze). Ora se si imposta NuGetAuditMode su all, Esplora soluzioni mostrerà gli indicatori non solo per le dipendenze dirette, ma anche per le dipendenze transitive con vulnerabilità.

vulnerabilità delle dipendenze Transitive in Esplora soluzioni

GitHub Copilot

Ask GitHub altre domande

Search in GitHub per trovare commit, problemi, richieste pull, repository e argomenti direttamente da Visual Studio.

È ora possibile usare il GitHub Copilot Chat per eseguire ricerche in GitHub per trovare commit, problemi, richieste pull, repository e argomenti.

È possibile porre domande come:

  • @github Quali sono tutte le richieste pull aperte assegnate all'utente corrente?
  • @github Quali sono i problemi più recenti assegnati?
  • @github Quando è stata rilasciata la versione più recente?
  • @github Mostra le richieste pull unite recenti da @davidfowl

New GitHub Skills

Questa funzionalità è disponibile per tutti gli utenti GitHub Copilot. Altre informazioni su available GitHub Skills nella documentazione GitHub Copilot.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Struzioni personalizzate per GitHub Copilot

Creare un file che aggiunge automaticamente informazioni a tutte le domande poste a GitHub Copilot Chat.

Con GitHub Copilot, è possibile ricevere risposte di chat personalizzate per il flusso di lavoro del team, strumenti preferiti e specifiche del progetto, semplicemente fornendo contesto. Anziché aggiungere questo dettaglio contestuale a ogni query di chat, è possibile creare automaticamente un file che fornisce queste informazioni. Anche se questo contesto aggiuntivo non verrà visualizzato nella chat, è disponibile per GitHub Copilot, consentendogli di generare risposte più accurate e pertinenti.

GitHub Copilot istruzioni personalizzate

Come abilitare istruzioni personalizzate
  1. Abilitare la funzionalità tramite Tools > Options > GitHub > Copilot> e controllare (Anteprima) Abilitare le istruzioni personalizzate da caricare da .githubFile /copilot-instructions.md e aggiunti alle richieste.
  2. Aggiungere copilot-instruction.md nella radice del repository all'interno del file con estensione github, creare il file, se non esiste già.

GitHub Copilot Abilitare istruzioni personalizzate

Altre informazioni sulla creazione di istruzioni personalizzate qui

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Model selezione in GitHub Copilot Chat

GitHub Copilot ora consente di selezionare il file model.

OpenAI o1-preview e o1-mini sono ora disponibili per tutti gli utenti in GitHub Copilot Chat in Visual Studio.

È ora possibile provare questi modelli in prima persona usando o1-preview, o1-mini o il modello GPT-4o predefinito per alimentare GitHub Copilot Chat. Con il cambio di modello disponibile, è possibile passare facilmente dalla spiegazione delle API o dalla generazione di codice di base alla creazione di algoritmi complessi o al debug degli errori logici.

Visitare il GitHub Changelog per altre informazioni su questa funzionalità.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Enhanced contestual understanding

Enhanced contestual understanding in GitHub Copilot offre risposte più precise.

Miglioramento della comprensione contestuale in GitHub Copilot

GitHub Copilot offre ora una migliore comprensione contestuale per offrire risposte ancora più precise. Con questo aggiornamento, GitHub Copilot può interpretare in modo intuitivo le caratteristiche chiave nel codice, adattando suggerimenti in base alle esigenze specifiche del progetto. Questo approccio più intelligente all'assistenza per il codice è progettato per facilitare il lavoro in modo più efficiente, senza la necessità di modifiche frequenti al contesto.

Provalo con GitHub Copilot oggi!

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


aggiornamenti di esclusione del contenuto

l'esclusione del contenuto supporta ora i moduli secondari e i repository annidati.

È stato migliorato il modo in cui il sistema gestisce i moduli secondari e i repository annidati, semplificando l'uso di strutture di progetto complesse.

È stato inoltre aggiunto il supporto per i repository non Git, espandendo la flessibilità del flusso di lavoro e consentendo di integrare facilmente un'ampia gamma di progetti.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


'ispezione intelligente delle variabili 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 descrizioni dati non è mai stata più semplice con Ask 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 sugli errori, sui risultati imprevisti o sulle anomalie, senza mai uscire dall'IDE.

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'IDE ogni volta che si verificano valori imprevisti.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


visualizzatore IEnumerable basato su intelligenza artificiale

espressioni LINQ Editable basate su intelligenza artificiale nel visualizzatore IEnumerable.

È stata migliorata la funzionalità di espressione modificabile nel visualizzatore IEnumerable con l'assistenza per l'intelligenza artificiale. La nuova funzionalità Chiedi a Copilot consente agli utenti di sfruttare l'intelligenza artificiale direttamente all'interno della casella di testo dell'espressione modificabile per creare espressioni LINQ complesse.

visualizzatore IEnumerable expression modificabile di intelligenza artificiale

Per accedere alla chat GitHub Copilot, è sufficiente fare clic sull'icona GitHub Copilot che si trova nell'angolo in basso a destra della sezione dell'espressione modificabile. Nella chat sono disponibili esempi di sintassi LINQ di esempio. Inoltre, è possibile descrivere la query in linguaggio naturale e GitHub Copilot genererà la query LINQ corrispondente. Per applicare il filtro di query LINQ al visualizzatore, usare il pulsante Mostra nel visualizzatore nella chat.

Fornisce feedback istantaneo e indicazioni, rendendo il processo di creazione di filtri e trasformazioni complessi più intuitivi ed efficienti.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Debug con test GitHub Copilot

Introduzione al debug di test non riusciti usando test di debug con GitHub Copilot.

Serve aiuto per eseguire il debug degli unit test non superati. Ora GitHub Copilot può essere utile fornendo un piano di debug e guidando il debug del test non riuscito per avvicinarsi al passaggio facendo clic sul pulsante Debug con Copilot in Esplora test.

Debug con GitHub Copilot

Dopo aver avviato la funzionalità, GitHub Copilot fornirà un piano di debug, impostare i punti di interruzione appropriati e controllare le variabili e avviare la sessione di debug. Quando raggiunge il punto di interruzione, fornisce GitHub Copilot con valori per le variabili watched e determina il passaggio successivo, continuare il debug o risolvere il codice del problema. È possibile continuare con questa conversazione fino a quando non si ha un test superato.

GitHub Copilot Chat con piano di debug e passaggi successivi

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Fix con GitHub Copilot 📣

GitHub Copilot consente di risolvere i problemi di codice.

GitHub Copilot è ora integrato nell'elenco di lampadine ed errori, fornendo correzioni rapide e spiegazioni dettagliate per i problemi di codice. Che si stia sviluppando in C# o C++, questa funzionalità consente di comprendere e risolvere i problemi nella codebase in modo più efficiente.

Per iniziare, è sufficiente richiamare la lampadina e selezionare Fix with Copilot. Verrà avviata una chat inline con GitHub Copilot, offrendo una correzione disponibile.

codice Fix con GitHub Copilot dalla lampadina

È anche possibile selezionare l'icona GitHub Copilot dall'elenco degli errori per aprire il pannello della chat, in cui sono disponibili spiegazioni dettagliate e soluzioni per l'errore.

codice Fix con GitHub Copilot dall'elenco errori

Sfruttando i sistemi LLM, GitHub Copilot fornisce spiegazioni e correzioni utili direttamente all'interno della lampadina e dell'elenco di errori, migliorando l'esperienza di scrittura del codice.

📣 See feature ticket per condividere il feedback e continuare la conversazione.

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


I completamenti di intelligenza artificiale per C#

GitHub Copilot introduce un contesto aggiuntivo dai file di origine pertinenti per migliorare i completamenti per C#.

GitHub Copilot completamento del codice forniscono suggerimenti di completamento automatico inline durante il codice. Questi suggerimenti vengono generati in base al contenuto del file attualmente attivo e a qualsiasi altro file aperto nell'editor. Tuttavia, abbiamo scoperto che l'incorporazione di un contesto più rilevante migliora significativamente questi suggerimenti.

Per migliorare l'esperienza per gli sviluppatori C#, è stato aggiornato GitHub Copilot per includere contesto C# aggiuntivo, ad esempio i tipi e i metodi disponibili nei completamenti.

Con la versione più recente di Visual Studio, GitHub Copilot ora considera automaticamente i file pertinenti in modo semantico per un contesto aggiuntivo, anche se questi file non sono aperti nell'editor. Questo miglioramento aiuta a ridurre le allucinazioni offrendo suggerimenti più pertinenti e accurati.

Before: i file semanticamente rilevanti non vengono considerati come contesto per i completamenti GitHub Copilot

i file Semanticly rilevanti non sono considerati come contesto per i completamenti GitHub Copilot

After: i file semanticamente rilevanti vengono considerati come contesto per i completamenti GitHub Copilot

i file Semantically pertinenti vengono considerati come contesto per GitHub Copilot Completamenti

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Codice di riferimento in GitHub Copilot

Introducing del codice che fa riferimento in GitHub Copilot, consentendo di consentire ai suggerimenti di codice contenenti corrispondenze di codice pubblico durante la ricezione di informazioni dettagliate sulla corrispondenza.

Siamo lieti di annunciare che il riferimento al codice è ora disponibile in GitHub Copilot all'interno di Visual Studio!

esempio di codice pubblico a cui viene fatto riferimento

Questa nuova funzionalità offre trasparenza per gli sviluppatori notificando loro quando GitHub Suggerimenti di Copilot corrisponde al codice pubblico. È ora possibile visualizzare il codice corrispondente, il relativo file di origine e le informazioni sulle licenze associate, consentendo loro di prendere decisioni più informate durante la codifica.

Il riferimento al codice consente di bloccare o consentire suggerimenti contenenti corrispondenze di codice pubblico, migliorando il controllo e la personalizzazione.

Integrando il codice che fa riferimento in GitHub Copilot, stiamo promuovendo la condivisione delle conoscenze, migliorando la trasparenza e consentendoti di creare con fiducia. Che si tratti di un singolo sviluppatore o di un team più ampio, questa funzionalità migliora il flusso di lavoro e consente di esplorare facilmente le complessità del codice pubblico.

Prova GitHub Copilot in Visual Studio oggi e prendi il controllo del processo di sviluppo con maggiore trasparenza e fiducia!

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


Chiamata guidata in GitHub Copilot

Introducendo un nuovo modo più colloquiale per chattare con GitHub Copilot.

Verrà introdotto un nuovo modo più colloquiale per interagire con GitHub Copilot Chat.

esempio di esperienza chat guidata

È stato introdotto un modo più interattivo e di conversazione per usare GitHub Copilot Chat. Ora, invece di sentirsi bloccati o non sicuri, GitHub Copilot ti guiderà con domande chiare quando il contesto non è chiaro, assicurando risposte più accurate e utili.

Questa esperienza di chat guidata consente di perfezionare le query, offrire suggerimenti e garantire interazioni più fluide e più produttive. Con questa nuova modalità di chat, potrai godere di un GitHub Copilot più intelligente e intuitivo che si adatta alle tue esigenze durante il codice.

Dare la nuova esperienza di chat guidata una prova oggi e vedere la differenza per se stessi!

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


GitHub Copilot onboarding

Introduzione più rapida in GitHub Copilot Chat!

Serve aiuto per iniziare a usare GitHub Copilot Chat? Sono state introdotte due nuove funzionalità di onboarding che consentono di iniziare più rapidamente.

Prompt di avvio

Inviare il primo messaggio a GitHub Copilot facendo clic su una delle richieste di avvio. Usare questi prompt per visualizzare le funzionalità GitHub Copilot da offrire nel flusso di lavoro.

GitHub Copilot prompt di avvio

Raccolta prompt

Se è necessario fare di nuovo riferimento a alcune richieste predefinite, fare clic sul pulsante Raccolta prompt (icona libro) per visualizzare un elenco di tutte le richieste disponibili. Questa libreria contiene i prompt di uso comune, solo un clic!

GitHub Copilot promptlibrary

Sia che si esaminino nuove attività di scrittura del codice o si stia semplicemente cercando ispirazione, i nostri prompt sono qui per aiutarti a approfondire e iniziare a sfruttare al meglio GitHub Copilot Chat.

Date un tentativo e vedete dove ti porta!

Importante

Per usare questa funzionalità, assicurarsi di attivare GitHub Copilot


.NET

Achieve più con .NET 9 📣

.NET 9 eleva lo sviluppo di app intelligenti e native del cloud, concentrandosi sui miglioramenti della produttività, sulle distribuzioni semplificate e sull'integrazione accelerata dell'intelligenza artificiale.

.NET 9 eleva lo sviluppo di app intelligenti e native del cloud, concentrandosi sui miglioramenti della produttività, sulle distribuzioni semplificate e sull'integrazione accelerata dell'IA, offrendo prestazioni superiori in un'ampia gamma di applicazioni. Con il supporto completo per .NET 9 in Visual Studio 17.12, è possibile sfruttare facilmente tutti i miglioramenti più recenti. Per altre informazioni sulle novità, visitare Novità di .NET 9.

.NET 9

Sono inoltre disponibili aggiornamenti delle funzionalità relative all'IDE che rendono più produttivi .NET e ASP.NET più produttivi che mai.

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


Suppressing warnings for specific GitHub Advisories respected in Visual Studio

NuGet consente di eliminare gli avvisi per avvisi specifici GitHub e le supressioni vengono rispettate in Visual Studio.

Il controllo NuGet fornisce avvisi quando un pacchetto usato nel progetto presenta una vulnerabilità nota. È sempre consigliabile eseguire l'aggiornamento a una nuova versione del pacchetto, ma se l'aggiornamento è impossibile e si è certi che il software non sia a rischio, è possibile eliminare gli avvisi per avvisi specifici di GitHub aggiungendo NuGetAuditSuppress elementi al file di progetto.

<Project Sdk="Microsoft.NET.Sdk">
  <ItemGroup>
    <NuGetAuditSuppress Include="https://github.com/advisories/GHA1234" />
  </ItemGroup>
</Project>

Possibilità di configurare nuget.org come di origine del controllo

Ora è possibile impostare nuget.org come origine di controllo per ottenere informazioni sulla vulnerabilità anche quando si usano altri feed NuGet.

Il controllo NuGet richiede un'origine del pacchetto che fornisce un database di vulnerabilità. nuget.org fornisce informazioni sulle vulnerabilità del database degli avvisi GitHub.

A partire da Visual Studio 17.12, è ora possibile specificare le origini di controllo in NuGet.Config, quindi non è più necessario usare nuget.org come origine del pacchetto.

Se non si usa nuget.org come origine del pacchetto e si vuole usare Il controllo NuGet per la creazione di report dei pacchetti vulnerabili durante il ripristino, aggiungere quanto segue a un file nuGet.Config nella directory della soluzione:

<confiuration>
  <!-- any existing config, including <packageSources> -->
  <auditSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </auditSources>
</configuration>

Debug & diagnostica

debug
Blazor WebAssembly 📣

Un'esperienza di debug migliorata per le app WebAssembly Blazor destinate a .NET 9 o versioni successive.

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

  • 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 in modo da 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 viene espanso e migliorato.

miglioramenti al debug di Blazor

Per abilitare la nuova esperienza di debug in anteprima:

  • Abilitare l'impostazione Enable new .NET 9+ Mono debugger.
  • Installare l'SDK di .NET 9 più recente.
  • Aggiornare l'app Blazor come destinazione .NET 9.

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

istogramma contatore
nel profiler

informazioni dettagliate sulle prestazioni migliorate usando l'istogramma del contatore del contatore del profiler.

Il recente miglioramento della suite di profilatura delle prestazioni di Visual Studio introduce la funzionalità istogramma del contatore. Questo strumento consente di identificare e analizzare i dati dell'istogramma generati dagli strumenti istogrammi. Quando si registrano dati da questi strumenti, vengono visualizzati i risultati dell'istogramma, fornendo una rappresentazione chiara della distribuzione dei dati.

contatore istogramma contatore

Inoltre, il grafico corsia offre una visualizzazione dettagliata e segmentata delle metriche delle prestazioni, migliorando la capacità di individuare e risolvere efficacemente i problemi di prestazioni.

metodo Display restituisce valori 📣

Il debugger mostra ora i valori restituiti inline con l'assistenza di intelligenza artificiale per migliorare l'efficienza.

Il debugger Visual Studio visualizza ora i valori inline per le istruzioni restituite, rispondendo a una delle funzionalità più richieste dalla community degli sviluppatori.

Questo miglioramento consente di visualizzare i valori esatti restituiti dalle funzioni direttamente nel codice, eliminando la necessità di codice aggiuntivo o variabili temporanee per controllare i valori restituiti.

valori restituiti inline

Con GitHub Copilot, è possibile usarla ulteriormente usando l'opzione Chiedi a Copilot al passaggio del mouse per analizzare i valori restituiti direttamente in Visual Studio, consentendo di risolvere immediatamente i problemi.

È supportato sia nel codice nativo che in quello gestito.

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

Esportare gruppi di punti di interruzione con facilità 📣

Importazione ed esportazione semplici dei gruppi di punti di interruzione.

Visual Studio Gruppi di punti di interruzione supportano ora la funzionalità di importazione ed esportazione, consentendo di gestire e gestire facilmente le strutture dei punti di interruzione in più progetti o ambienti.

gruppi di punti di interruzione Esporta importazione

Questa nuova funzionalità consente di esportare i gruppi di punti di interruzione con le relative configurazioni e di importarli in soluzioni diverse, garantendo una configurazione di debug coerente senza dover ricreare manualmente i gruppi di punti di interruzione.

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

IntelliSense per il visualizzatore IEnumerable 📣

visualizzatore IEnumerable avanzato con IntelliSense per query LINQ più veloci.

Il visualizzatore IEnumerable è stato migliorato con IntelliSense, fornendo suggerimenti di codice in tempo reale e completamento automatico, che rende la scrittura di espressioni LINQ più veloci e accurate.

visualizzatore IEnumerable intelliSense

Questo miglioramento semplifica il processo di compilazione e modifica delle query offrendo raccomandazioni intelligenti sul codice, riducendo la probabilità di errori e accelerando il tempo di sviluppo.

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

Analizzare l'uso della memoria nel tempo

Selezionare e confrontare due snapshot di memoria usando la finestra Strumento di diagnostica.

La finestra Strumento di diagnostica supporta ora il confronto degli snapshot di memoria, semplificando l'analisi delle modifiche alla memoria nel tempo.

Per usare questa funzionalità, assicurarsi di avere almeno due snapshot di memoria acquisiti nella scheda memoria nella finestra Strumento di diagnostica.

Selezione di snapshot per confronto
  • Tenere premuto il tasto ctrl e fare clic sulle righe dello snapshot per selezionare due snapshot.
  • In alternativa, tenere premuto il tasto maiusc e usare i tasti di direzione up/down per selezionare due snapshot consecutivi.
Annullamento della selezione di snapshot
  • Tenere premuto ctrl tasto e fare clic sullo snapshot da deselezionare.
Visualizzazione della differenza

Dopo aver selezionato gli snapshot di memoria per il confronto, fare clic sul pulsante visualizza diff che si trova sopra l'elenco di snapshot per visualizzare le differenze tra di esse.

Visualizzare MMA snapshot diff

Strumenti Git

Gestire la ridenominazione dei file con Git 📣

Ottenere tranquillità quando si rinominano i file con una nuova notifica.

Quando si rinominano i file da Esplora soluzioni, verrà visualizzato un promemoria per preparare le modifiche per visualizzare le ridenominazione in Git. In questo modo si aumenta la sicurezza che Git riconosca la modifica del file e lo stia monitorando correttamente. Abbiamo scoperto che questo è un punto di confusione per molti clienti, quindi abbiamo lavorato con persone nel Developer Community per produrre una nuova notifica.

notifica git mv

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

Pull request drafts and templates 📣

Creare bozze di richiesta pull e avviare le descrizioni con i modelli in Visual Studio.

È ora possibile creare bozze di richiesta pull e iniziare le descrizioni con GitHub modelli in Visual Studio. Si tratta delle due richieste principali per la creazione di un'esperienza di richiesta pull.

Richieste pull bozza

Usare il menu a discesa nel pulsante Crea per Crea come bozza.

l'opzione Crea bozza di richieste pull

Modelli di richiesta pull

Il modello di richiesta pull predefinito verrà usato durante la creazione di una nuova richiesta pull per GitHub e Azure DevOps. Altre informazioni su come aggiungere un modello di richiesta pull al repository nella documentazione di GitHub e Azure DevOps documentazione.

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

Creare i repository interni GitHub 📣

Visual Studio ora supporta la creazione di repository interni e include indicazioni per ogni tipo di repository per offrire maggiore attendibilità all'avvio di un nuovo progetto.

Visual Studio ora supporta repository interni per le organizzazioni GitHub. Sono state inoltre fornite indicazioni per ogni tipo di repository per offrire maggiore chiarezza sulla visibilità del nuovo progetto a seconda dell'account in uso.

finestra di dialogo Nuovo repository

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

Copy collegamento Git 📣

È possibile ottenere un collegamento GitHub o Azure DevOps a una riga di codice specifica per semplificare la condivisione con i colleghi.

Ogni volta che si condividono alcune righe di codice con un collega, spesso può essere utile per ottenere un contesto aggiuntivo dal repository. Tuttavia, se stanno lavorando su qualcos'altro può richiedere troppo tempo e interrompere il loro lavoro per eseguire il checkout del ramo.

A questo punto, è possibile evidenziare il codice che si vuole condividere nell'editor, aprire il menu di scelta rapida con un clic con il pulsante destro del mouse e nel sottomenu Git ottenere un collegamento condivisibile al codice in GitHub o Azure DevOps. In questo modo è semplice e facile collaborare e semplifica il flusso tra l'IDE e i repository remoti sul Web.

Menu di scelta rapida Copia URL Git

È anche possibile ottenere collegamenti condivisibili direttamente dalla cronologia dei commit. Ciò consente di fare riferimento al codice non estratto esattamente come senza sforzo.

Copiare l'URL git nella finestra del repository Git

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

Git supporto multi-repository 📣

È ora possibile creare richieste pull e collegare elementi di lavoro in scenari multi-repository per GitHub e Azure DevOps.

È ora possibile creare richieste pull e collegare elementi di lavoro in scenari multi-repository. Sia per GitHub che per Azure DevOps, sono supportate le integrazioni quando si usa la selezione repository per concentrarsi su un determinato repository negli scenari multi-repository.

selezione repository

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

Messazione del commit git di intelligenza artificiale 📣

È possibile aggiungere istruzioni aggiuntive alla richiesta di generazione del messaggio di commit Git con GitHub Copilot.

È ora possibile aggiungere istruzioni aggiuntive alla richiesta di generazione del messaggio di commit Git con GitHub Copilot. In questo modo è possibile personalizzare il messaggio di commit in base agli standard del flusso di lavoro e del team. È possibile specificare il numero di righe da generare, la lunghezza delle righe e anche fornire uno stile di commit di esempio. Modificare il messaggio nel campo del prompt in Tools > Options > GitHub > Copilot > Source Control Integration.

Personalizzare messaggi Git

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

IDE

Multi-Project Launch Configuration 📣

Semplificare il debug configurando e salvando i profili di avvio per progetti specifici all'interno di soluzioni multiprogetto. Condividere facilmente le configurazioni con il team.

La funzionalità Configurazione avvio multi-Project consente di configurare e salvare profili per l'avvio di progetti specifici all'interno di una soluzione multi-project in stati predefiniti per il debug.

Configurazione di avvio di più Project

Questo semplifica il processo di utilizzo di soluzioni complesse, migliora l'efficienza del debug e consente una facile condivisione delle configurazioni tra i membri del team.

📣 See feature ticket per condividere il feedback e continuare la conversazione.

Nota

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


avvisi di sicurezza MotW

Gli avvisi di sicurezza Mark of the Web (MotW) sono ora integrati nella funzionalità di attendibilità complessiva.

Visual Studio visualizzerà un avviso di sicurezza quando rileva che si sta tentando di aprire il contenuto contrassegnato con l'identificatore Mark of the Web (MotW).

Questo nuovo avviso correlato alla fiducia indica i rischi di apertura di contenuto da origini potenzialmente non sicure, ad esempio download Internet.

finestra di dialogo Trust che segnala i rischi per la sicurezza dell'apertura dei download Web all'interno di Visual Studio

È possibile modificare l'esperienza di attendibilità predefinita passando alla impostazioni di attendibilità di in Strumenti > Opzioni > Ambiente.

Impostazioni attendibilità consentono di personalizzare l'esperienza di attendibilità predefinita

Teams Toolkit nuovi modelli di intelligenza artificiale

Teams Toolkit esegue l'onboarding di nuovi modelli di app teams per intelligenza artificiale.

Teams Toolkit aggiunge tre nuovi modelli di app teams per intelligenza artificiale:

Sono:

modelli di app teams per intelligenza artificiale

  1. Basic AI Chat Bot- i propri copiloti in Microsoft Teams creati con la libreria di intelligenza artificiale di Teams

  2. Chat with Your Data : un modello di chatbot intelligente con informazioni sul dominio dall'origine dati personalizzata.

    Teams Toolkit consente ora di creare Copilot personalizzati, un chatbot basato sull'intelligenza artificiale con funzionalità RAG che può comprendere il linguaggio naturale e recuperare i dati di dominio per rispondere a domande specifiche del dominio. Questo modello supporta l'accesso ai dati personalizzati in Custom app Copilot.

    Quando si seleziona questo modello, è possibile selezionare due modi per connettersi ai dati:

    un. Azure AI Search: il chatbot può accedere ai dati nel servizio Azure AI search e usarlo nella conversazione con gli utenti.

    b. Origine dati personalizzata: è possibile aggiungere l'origine dati desiderata a Custom app Copilot, ad esempio il file system o il database vettoriale.

  3. agente di intelligenza artificiale: un agente di intelligenza artificiale in Teams che può prendere decisioni ed eseguire azioni in base al ragionamento LLM.

Provare i nuovi modelli di app di intelligenza artificiale per iniziare il percorso di intelligenza artificiale in Teams.

Copy tra istanze 📣

È ora possibile copiare file e cartelle da Esplora soluzioni in un'istanza di Visual Studio a un'altra.

Siamo lieti di introdurre una funzionalità molto richiesta in Visual Studio! È ora possibile copiare e incollare facilmente file di codice e cartelle tra istanze di Visual Studio diverse usando il Esplora soluzioni. È sufficiente selezionare il file o la cartella desiderata, usare Ctrl+C o Ctrl+X, passare a un'altra istanza di Visual Studio e usare Ctrl+V per includere tali file o cartelle nella nuova istanza Soluzione. Tutte le modifiche verranno riflesse accuratamente nel file system.

Oltre a copiare e incollare, è anche possibile trascinare i file e le cartelle da un'istanza di Visual Studio a un'altra.

Copy tra istanze di Visual Studio

In precedenza, questa funzionalità era disponibile solo per alcuni tipi di progetto, ma ora è stata espansa per includere tutti i tipi di progetto principali in Visual Studio.

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

Nuvola

Servizio app di Azure pubblicare gli aggiornamenti della sicurezza

Publishing per Servizio app di Azure in modo sicuro usando gli aggiornamenti della sicurezza integrati.

Servizio app di Azure > consiglia ai clienti di disabilitare l'autenticazione di base e abilitare la pubblicazione tramite l'autenticazione integrata.

Azure Tools Secure Publish

La nuova funzionalità di Visual Studio 2022 disabilita l'autenticazione di base e abilita la sicurezza integrata per la pubblicazione in Servizio app di Azure. Ciò garantisce che la pubblicazione delle credenziali venga gestita in modo sicuro, riducendo i rischi associati all'autenticazione di base.

Quando si esegue la pubblicazione in un Servizio app di Azure con l'autenticazione di base abilitata (ovvero not consigliata), gli utenti visualizzeranno l'opzione Turn per l'autenticazione di base e verrà deselezionata per impostazione predefinita. I clienti che devono conservare l'autenticazione di base possono selezionare la casella, ma dato che è consigliabile disabilitare l'autenticazione di base, questa opzione è deselezionata per impostazione predefinita. È quindi start secure se è la prima volta che si pubblica o si get secure dopo aver aggiornato Visual Studio.

Azure Tools Secure Publish Disabled

Se l'app Web è stata creata di recente tramite il portale o questa o una versione futura di Visual Studio, l'autenticazione di base verrà disabilitata per impostazione predefinita. Per qualsiasi app Web già disabilitata, l'autenticazione di base viene aggirata inavvertitamente rendendo l'app Web meno sicura disabilitando completamente la casella di controllo, in modo da mantenere la sicurezza.

Azure Tools Secure Publish Enabled

Azure Supporto di Processi Web linux 📣

Pubblicazione su Azure Processi Web in Linux è ora supportata facendo clic con il pulsante destro del mouse su Pubblica in Visual Studio.

Le app console multipiattaforma .NET 5.0+ sono supportate in Azure WebJobs Linux e ora è possibile fare clic con il pulsante destro del mouse su Pubblica il codice per Azure Processi Web in Linux da Visual Studio.

finestra di dialogo Pubblica con di destinazione Linux

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

Funzioni di Azure Flex Consumption

Publish su Azure piano di hosting Flex Consumption, attualmente disponibile in Preview.

Se si sta provando il nuovo piano di hosting a consumo flessibile Funzioni di Azure, attualmente in anteprima, sarà possibile fare clic con il pulsante destro del mouse su Pubblica in Flex da Visual Studio.

Flex Consumption estenderà ulteriormente le funzionalità delle app e fornirà quanto segue:

  • Rete virtuale'integrazione senza costi aggiuntivi
  • Scalabilità rapida e prevedibile con la scelta delle dimensioni dell'istanza e il controllo della concorrenza per istanza
  • Serverless con scalabilità a zero e si paga solo per le istanze mentre sono attive
  • Mitigazione dell'avvio a freddo con la funzionalità facoltativa delle istanze Always Ready

Altre informazioni sul consumo flessibile nel post di blog announcement o documentazione e provare uno dei nostri samples.

pubblicazione Funzioni di Azure Flex Consumption

l'aggiornamento della sicurezza di Servizi connessi

Rendere le app e le esperienze di sviluppo più sicure.

In questo aggiornamento a Servizi connessi è ora possibile connettere il codice del progetto alle risorse Azure, ad esempio Archiviazione di Azure, senza la necessità di segreti o stringhe di connessione nel codice o nella configurazione.

A questo punto, si assegna un nome alla connessione, gli endpoint vengono salvati in modo permanente nella configurazione anziché nella stringa di connessione completa. Ciò significa un minor numero di segreti su disco, quindi il tempo di sviluppo sarà più sicuro per impostazione predefinita e subisce un minor numero di errori durante il commit dei segreti nel controllo del codice sorgente.

Connect to Archiviazione di Azure dialog

Viene inoltre usata la Azure SDK più recente, quindi si otterrà il supporto per la connessione alle risorse Azure usando l'account di accesso Visual Studio (o interfaccia della riga di comando di Azure) anziché connettersi tramite un stringa di connessione. Durante l'esecuzione in locale, il codice userà le credenziali registrate per accedere alle risorse. Durante l'esecuzione in Azure, il Azure SDK userà l'identità gestita del servizio app per accedere alle risorse.

Servizi connessi imposta tutto per l'utente e inserisce il codice appropriato per l'uso dell'identità integrata anziché dei segreti. Durante la pubblicazione, l'app verrà configurata con l'identità e i ruoli appropriati necessari per accedere alle risorse.

Schermo

Strumenti MSIX implementati per le app UWP in .NET 9 📣

Visual Studio ora fa riferimento al nuovo strumento MSIX a progetto singolo autonomo per creare pacchetti di app UWP in .NET 9.

In l'anteprima iniziale del supporto UWP per .NET 9, ci siamo basati su WindowsAppSDK per fornire gli strumenti MSIX alle app di pacchetto usando la configurazione del singolo progetto (anziché usare un progetto di creazione di pacchetti Windows, ovvero un file con estensione wapproj). In questo modo sono stati introdotti diversi problemi, il principale è che anche la dipendenza transitiva WebView2 da WindowsAppSDK è stata aggiunta automaticamente a tutte le app UWP, anche quando non è necessario.

È stato ora completamente separato lo strumento MSIX del progetto singolo e lo è stato pubblicato come nuovo pacchetto NuGet autonomo: Microsoft.Windows. SDK. BuildTools.MSIX. Sono inclusi tutti gli elementi necessari per compilare, distribuire ed eseguire app UWP in .NET 9, nonché generare pacchetti MSIX da pubblicare nel Microsoft Store o sul sideload. Gli strumenti UWP in .NET 9 in Visual Studio aggiungeranno automaticamente questi due riferimenti al pacchetto quando necessario:

degli strumenti MSIX

In questo modo vengono rimosse completamente la dipendenza transitiva WebView2 e l'errore di compilazione presente per i nuovi progetti nelle versioni di anteprima precedenti quando non si imposta manualmente la proprietà WindowsSdkPackageVersion nel file con estensione csproj. Con questa modifica, i nuovi progetti verranno compilati ed eseguiti senza dover apportare modifiche aggiuntive.

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

Enhanced WinUI components search

Configurazione del progetto WinUI di Visual Studio migliorata, semplificando la posizione dei componenti per sviluppatori.

Semplificare ulteriormente la configurazione del progetto WinUI con l'aggiornamento più recente del programma di installazione di Visual Studio. Gli sviluppatori possono ora individuare rapidamente i componenti correlati a WinUI, eliminando la frustrazione precedente di spostarsi attraverso un risultato di ricerca vuoto. Questo miglioramento semplifica la configurazione dell'ambiente di sviluppo, consentendo un'esperienza utente più intuitiva ed efficiente.

 Immagine che mostra la nuova ricerca di singoli componenti WinUI in Visual Studio Installer

Aprire il programma di installazione di Visual Studio, passare alla scheda Individual components e cercare le parole chiave correlate a WinUI (WinUI, WinRT)!

.NET 9 supporto SDK per UWP 📣

Visual Studio include ora .NET 9 SDK con supporto UWP predefinito.

Uno dei passaggi necessari per provare UWP in .NET 9 in anteprima iniziale era installare una build notturna dell'SDK .NET 9. Con questa nuova versione di Visual Studio, non è più necessaria.

Visual Studio include ora l'SDK .NET 9, che include tutto il nuovo supporto per UWP in .NET 9 (in particolare la logica per fare riferimento alle proiezioni XAML UWP e per configurare CsWinRT in tipi di progetto per le app XAML UWP). È ora possibile compilare ed eseguire UWP in .NET 9 progetti con .NET SDK installato automaticamente con Visual Studio.

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

Simplified .csproj per UWP 📣

UseUwpTools viene ora impostato automaticamente da Visual Studio per i progetti UWP moderni in .NET 9.

Le app e le librerie UWP che usano .NET 9 usati per richiedere due proprietà nei file con estensione csproj: UseUwp, che configura l'SDK di .NET per le app XAML UWP e UseUwpTools, che consente a tutti i nuovi strumenti in Visual Studio di compilare ed eseguire app XAML UWP.

La proprietà UseUwpTools viene ora impostata automaticamente da Visual Studio quando UseUwp è impostata, per rendere il file con estensione csproj meno dettagliato nello scenario comune. Per gli scenari avanzati, è comunque possibile rifiutare esplicitamente disabilitando manualmente UseUwpTools.

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

RID per UWP in .NET 9 📣

UWP nelle librerie di classi .NET 9 impostare correttamente i RID sui valori corretti per Native AOT.

È stato risolto un bug negli strumenti APPX per le librerie di classi UWP (e i componenti WinRT) in .NET 9, che applicava gli identificatori di runtime della piattaforma UWP in .NET Native per impostazione predefinita (ad esempio, usando il prefisso win10- e incluse le piattaforme che non sono più supportate, ad esempio arm).

Gli strumenti APPX ora impostano i RID corretti per .NET 9 progetti per impostazione predefinita: win-x86;win-x64;win-arm64. È comunque possibile specificarli manualmente, se necessario.

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

UWP project creation fixed 📣

È stata corretta la Creazione guidata modello universale che causava l'assenza di una finestra di dialogo di errore durante la creazione di una nuova piattaforma UWP in .NET 9 progetti.

Se usi il preview VSIX con i nuovi modelli di progetto per UWP in .NET 9, potresti aver notato che durante la creazione di un nuovo progetto è stata visualizzata una finestra di dialogo di errore. Ciò è stato particolarmente problematico durante la creazione di una nuova soluzione, perché Visual Studio non lo apriva correttamente dopo la creazione del progetto. Questo problema è stato risolto e la creazione di nuovi progetti destinati alla piattaforma UWP in .NET 9 funzionerà correttamente.

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

Ragnatela

variabili di richiesta
nei file HTTP 📣

I file HTTP supportano ora le variabili di richiesta. In questo caso è possibile inviare una richiesta e quindi usare i dati dalla risposta o dalla richiesta nelle richieste future.

Quando si lavora con i file HTTP , uno scenario comune è chiamare un endpoint, accettando un valore dalla risposta e inviando in una richiesta successiva. Ad esempio, è possibile chiamare un endpoint per autenticare un utente e quindi nelle chiamate successive è possibile passare il token restituito dall'endpoint di accesso. Prima di questa versione non era possibile in Visual Studio. Nel frammento di codice seguente è possibile vedere un esempio di funzionamento in un file HTTP.

# @name login
POST {{TodoApi_HostAddress}}/users/token
Content-Type: application/json

{
  "username": "{{myusername}}",
  "password": "{{mypassword}}"
}

###

GET {{TodoApi_HostAddress}}/todos
Authorization: Bearer {{login.response.body.$.token}}

###

Nel frammento di codice precedente sono presenti due richieste, la prima chiamata all'endpoint /users/token per autenticare l'utente. Immediatamente sopra la riga della richiesta verrà visualizzato il commento # @name login. Questa sintassi assegna alla richiesta un nome (login in questo caso) e la configura come variabile richiesta. Quando la richiesta viene inviata, è possibile accedere ai valori dalla risposta o dalla richiesta, in qualsiasi richiesta futura inviata da tale file HTTP. Poiché si tratta di una richiesta di accesso, è consigliabile prestare attenzione a proteggere i segreti. In Visual Studio è disponibile il supporto per l'accesso ai segreti in modo sicuro. Per altre informazioni sulla gestione dei segreti, vedi questa sezione nella documentazione.

La seconda richiesta chiama in un endpoint autenticato, /todos, che restituirà gli elementi todo per tale utente. Nella richiesta il token viene passato come intestazione con la riga.

Authorization: Bearer {{login.response.body.$.token}}

L'endpoint /users/token restituisce una risposta in JSON. Il token viene estratto con un'espressione JSON Path, $.token, nel corpo della risposta. Se si usa un endpoint che restituisce XML, anziché un'espressione JSON Path, è possibile passare un'espressione XPath. Il supporto in Visual Studio è stato ispirato dall'estensione OSS esistente per REST Client disponibile per Visual Studio Code. Altre informazioni sulle variabili di richiesta sono disponibili. Presto verrà aggiunta la documentazione per discutere questo supporto in modo molto più dettagliato.

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

supporto di Vitest in JavaScript e TypeScript 📣

Quando si usano progetti JavaScript e TypeScript è ora possibile creare test case con Vitest.

Nei progetti JavaScript e TypeScript (JSTS), i progetti con estensione esproj sono stati aggiunti il supporto per individuare ed eseguire test creati con Vitest. Per iniziare a usare i test Vitest, in un progetto JSTS aggiungere il pacchetto vitest usando npm nel Esplora soluzioni e quindi modificare il file di progetto in modo che le proprietà seguenti siano dichiarate.

    <JavaScriptTestRoot>test\</JavaScriptTestRoot>
    <JavaScriptTestFramework>Vitest</JavaScriptTestFramework>

Assicurarsi che il valore per JavaScriptTestRoot abbia il percorso relativo corretto in cui si trovano i file di test.

Aggiungere i test alla cartella corretta e compilare il progetto/soluzione. Successivamente, i test case verranno visualizzati in Esplora test.

Esplora test con test vitest

In Esplora test è possibile visualizzare i diversi test case individuati ed eseguiti i test case.

Non è ancora stato aggiunto il supporto per il debug, ma il supporto verrà aggiunto a breve. Un altro problema noto è che quando si fa doppio clic su un test case in Esplora test, verrà visualizzata la prima riga del file in cui è definito il test case. Stiamo migliorando anche questa esperienza.

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

Inlay Hints for more languages 📣

Inlay Hint support has been added to JavaScript, TypeScript, Python and Razor, and a setting to control its behavior.

Gli hint di inlay mostrano informazioni aggiuntive sul codice sorgente di cui viene eseguito il rendering inline. Viene in genere usato per visualizzare tipi, nomi di parametri e altre informazioni implicite dal codice direttamente nell'editor.

È stato aggiunto il supporto per visualizzare gli hint Inlay in JavaScript, TypeScript, Razor e Python. È stata aggiunta anche una nuova impostazione in modo da poter personalizzare il comportamento degli hint in queste lingue. Questa impostazione non si applica ancora a C# e C++. Per abilitare gli hint di inlay per queste lingue, è possibile usare la nuova impostazione in Strumenti di opzioni > opzioni > Editor di testo > tutti i linguaggi > hint inlay. È possibile visualizzare la nuova opzione nell'immagine seguente.

impostazione globale Degli hint di inlay

Esistono tre valori diversi per Gli hint inlay.

  • Sempre: mostra sempre gli hint di inlay.
  • Premendo alt+F1 : vengono visualizzati solo gli hint di inlay mentre ALT e F1 vengono premuti. Questo è il valore predefinito.
  • Mai: Hint inlay non vengono mai visualizzati.

Per JavaScript e TypeScript, è disponibile una pagina di opzioni aggiuntive per configurare il comportamento di Hint inlay. Questa opzione è disponibile in Tools > Opzioni > Editor di testo > JavaScript/TypeScript >> Generale.

Queste opzioni vengono visualizzate nell'immagine seguente.

impostazione TypeScript globale degli hint di inlay

Per impostazione predefinita, tutte queste opzioni sono disabilitate, è necessario abilitare gli hint che si desidera visualizzare per i file JavaScript e TypeScript. In un aggiornamento futuro è possibile modificare i valori predefiniti per queste opzioni. Nell'immagine seguente è possibile visualizzare un file JavaScript che mostra Hint inlay.

Hint inlay

Nell'immagine precedente gli hint inlay visualizzati sono le caselle grigie con : number per indicare il tipo della variabile.

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

'ambiente condiviso dei file HTTP 📣

Nei file di ambiente HTTP è stato aggiunto il supporto per condividere le variabili tra ambienti.

Quando si usano i file HTTP in Visual Studio è possibile definire environments in modo da poter creare impostazioni diverse per i test API. In precedenza, la condivisione di una variabile tra questi ambienti non era possibile. È stato aggiunto il supporto per una nuova voce, $shared, nel file di ambiente che consente di definire i valori predefiniti per le variabili disponibili in tutti gli ambienti.

Si consideri ad esempio il file di ambiente (http-client.env.json) riportato di seguito.

{
    "$shared": {
        "HostAddress": "https://localhost:7293"
    },
    "dev": {
        "username": "sayedha"
    },
    "dev2": {
        "username": "madsk"
    },
    "staging": {
        "username": "staginuser",
        "HostAddress": "https://sayedrest.example.com"
    }
}

I valori condivisi sono stati definiti in $shared sopra, costituiti dalla variabile HostAddress impostata su localhost:7293.

Dei tre ambienti definiti, nessuno degli ambienti di sviluppo ha specificato il valore per HostAddress ma la gestione temporanea ha un valore per tale ambiente.

Quando si usa l'ambiente dev o dev2, il valore per HostAddress proviene da $shared poiché tali ambienti non hanno un valore per HostAddress. Quando si usa l'ambiente di gestione temporanea, il valore per HostAddress verrà impostato su https://sayedrest.example.com.

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

Dati

Progetti SQL di tipo SDK in SSDT 📣

È ora possibile usare il formato del file di progetto in stile SDK nel file di progetto SQL Server Data Tools projects.

Questo aggiornamento aggiunge progetti SQL basati sul Microsoft. Build.Sql SDK, che offre il supporto multipiattaforma e i riferimenti ai pacchetti migliorati per i progetti SQL Server Data Tools (SSDT). Con file di progetto e riferimenti di database meno verbosi ai pacchetti NuGet, i team possono collaborare in modo più efficiente su database di grandi dimensioni in un singolo progetto o compilare più set di oggetti di diversi progetti.

progetto SQL in stile SDK in Esplora soluzioni

Distribuzioni di database da un Microsoft. Il progetto Build.Sql può essere automatizzato in ambienti Windows e Linux in cui il Microsoft. Lo strumento dotnet SqlPackage pubblica l'artefatto di compilazione (con estensione dacpac) dal progetto SQL. Altre informazioni sull'anteprima di progetti SQL in stile SDK e DevOps per SQL.

Microsoft. Build.Sql project SDK è open source e sviluppato in GitHub.

Assicurarsi di installare il componente di anteprima ssdT più recente nel programma di installazione di Visual Studio per usare i progetti SQL in stile SDK nella soluzione.

Programma di installazione abilitare la funzionalità di anteprima di SSDT

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

C++

impostare gli argomenti della riga di comando C++

Un nuovo modo per impostare gli argomenti della riga di comando direttamente dalla barra degli strumenti.

Impostare rapidamente gli argomenti della riga di comando per il progetto C++ con la nuova imposta argomenti elemento della barra degli strumenti. Questa casella combinata consente di impostare gli argomenti della riga di comando direttamente dalla barra degli strumenti, in modo da poter modificare rapidamente gli argomenti. Quando si esegue il progetto, tutti gli argomenti immessi nella casella verranno passati.

Questo componente della barra degli strumenti verrà visualizzato per impostazione predefinita se è installato sviluppo di giochi con il carico di lavoro C++. Se non viene visualizzata, è possibile aggiungerla facendo clic con il pulsante destro del mouse sulla barra degli strumenti e selezionando Imposta argomenti.

Nota: questa funzionalità è attualmente disponibile solo per i progetti unreal Engine. I progetti C++ generali saranno supportati nelle versioni future.

impostare gli argomenti della riga di comando C++

spiegazioni delle visualizzazioni di Build Insights

Informazioni su come usare ogni scheda di Build Insights tramite un collegamento alla documentazione appena aggiunto.

È ora possibile visualizzare una breve descrizione su come usare ogni scheda di Build Insights, insieme a un collegamento alla documentazione per una spiegazione dettagliata.

di spiegazioni delle visualizzazioni di Build Insights

rettifiche del percorso di Build Insights

Ottenere una visualizzazione più chiara del file in Build Insights, vedere il percorso completo al passaggio del mouse.

Abbiamo percorsi completi e relativi nascosti per ridurre la confusione. Per visualizzare i percorsi completi, è sufficiente passare il puntatore del mouse sul file. Verrà visualizzata anche una nuova colonna nome file per i file e le unità di conversione, visualizzate per impostazione predefinita per identificare rapidamente i file senza analizzare percorsi lunghi.

build insights path Rettifiche

Apri cartella per unreal Engine uproject

Un nuovo modo di aprire il tuo uproject.

È stato aggiunto un punto di ingresso aggiuntivo per aprire il progetto uproject del motore Unreal con il supporto uproject di Visual Studio. È ora possibile aprire il progetto uproject direttamente dal menu File selezionando Apri > progetto Unreal Engine... . Verrà aperto il progetto Unreal Engine in Visual Studio.

Per altre informazioni su come usare questa funzionalità, vedere Modificare indirettamente .uproject in Visual Studio.

apri cartella del motore Unreal

modifica migliorata

È ora possibile modificare le firme con l'interfaccia C++ migliorata.

È stata aggiornata l'interfaccia Change Signature per C++. È ora possibile aggiungere, rimuovere e ridisporre i parametri nella sezione di configurazione dei parametri. Inoltre, è possibile modificare l'ordine selezionandoli e trascinandoli in una nuova posizione.

I metodi di accesso rimangono invariati: premere CTRL+. attivare il menu azioni rapide e refactoring e selezionare Modifica firma.

di firma delle modifiche migliorata

Correzioni di bug segnalate dall'utente principali

📣 Vedere l'elenco completo di tutte le [correzioni di bug segnalate dall'utente][bugfixes] che lo hanno reso in questa versione.

Problemi noti

Versione 17.12.19

Data di rilascio:14 aprile 2026

Correzioni di bug principali Dalla community
Aggiornare Node.js versione per VS2022 ticket di feedback
Avvisi di sicurezza risolti CVE Descrizione
.NET vulnerabilità Denial of Service CVE-2026-26171 Esiste una vulnerabilità nella classe EncryptedXml in cui l'utilizzo non controllato delle risorse può dare a un utente malintenzionato la possibilità di eseguire un attacco Denial of Service.
.NET vulnerabilità di spoofing CVE-2026-32178 La neutralizzazione non corretta di elementi speciali in .NET consente a un utente malintenzionato non autorizzato di eseguire lo spoofing in una rete.
Vulnerabilità di danneggiamento della memoria SQLite CVE-2025-6965 Esiste una vulnerabilità nelle versioni di SQLite precedenti alla 3.50.2 in cui il numero di termini di aggregazione potrebbe superare il numero di colonne disponibili. Ciò potrebbe causare un problema di danneggiamento della memoria.
Node.js vulnerabilità di TLS DoS CVE-2026-21637 Un difetto nella gestione degli errori TLS Node.js consente agli utenti malintenzionati remoti di arrestarsi in modo anomalo o esaurire le risorse di un server TLS quando pskCallback o ALPNCallback sono in uso.
vulnerabilità di divulgazione di informazioni Visual Studio CVE-2026-32631 Esiste una vulnerabilità di divulgazione di informazioni in MinGit a causa della perdita di hash NTLM nel server non attendibile.

Versione 17.12.18

Data di rilascio:10 marzo 2026

Avvisi di sicurezza risolti CVE Descritpion
.NET vulnerabilità Denial of Service CVE-2026-26130 Esiste una vulnerabilità Denial of Service in ASP.NET Core a causa dell'utilizzo non controllato delle risorse.
vulnerabilità di elevazione dei privilegi .NET CVE-2026-26131 Esiste una vulnerabilità di elevazione dei privilegi in .NET a causa di un'autorizzazione non corretta.
vulnerabilità di divulgazione di informazioni Visual Studio CVE-2025-66413 Esiste una vulnerabilità di divulgazione di informazioni in MinGit a causa della perdita di hash NTLM nel server non attendibile.

Versione 17.12.17

Data di rilascio:10 febbraio 2026

Avvisi di sicurezza risolti CVE Descritpion
Vulnerabilità di bypass delle funzionalità di sicurezza .NET CVE-2026-21218 Questo aggiornamento della sicurezza risolve una vulnerabilità in cui la gestione non corretta di elementi speciali mancanti in .NET e Visual Studio consente a un utente malintenzionato autorizzato di eseguire lo spoofing in una rete.

Versione 17.12.16

Data di rilascio:13 gennaio 2026

Correzioni di bug principali Dalla community
GitHub Copilot: errore di autenticazione durante l'uso del modello automatico ticket Feedback ticket

Versione 17.12.15

Data di rilascio: 9 dicembre 2025

Correzioni di bug principali Dalla community
Impossibile avviare Visual Studio 2022 LTSC 17.12 ticket di feedback
Contrassegnato il componente Windows 10 SDK (versione 10.0.19041.0) come non supportato nel programma di installazione di Visual Studio.

Versione 17.12.14

Data di rilascio:11 novembre 2025

Correzioni di bug principali Dalla community
Nuovi aggiornamenti Visual Studio 2022 includono la libreria LibCurl che interrompe Git ticket di feedback

Versione 17.12.13

Data di rilascio:14 ottobre 2025

Correzioni di bug principali Dalla community
Gestione pacchetti Nuget per Project -> Connettersi alla posta indesiderata del feed ticket Feedback ticket
Aggiornamento di MinGit alla versione 2.50.1 per risolvere un problema per cui gli utenti con repository che si trovano nei volumi ReFS e Windows Server 2022 non sono riusciti a eseguire operazioni Git con l'IDE di Visual Studio. ticket di feedback
Avvisi di sicurezza risolti CVE Descritpion
Visual Studio vulnerabilità di esecuzione di codice remoto CVE-2025-55240 Questo aggiornamento della sicurezza risolve una vulnerabilità di esecuzione remota del percorso di ricerca non attendibile in Gulpfile
Vulnerabilità di bypass delle funzionalità di sicurezza .NET CVE-2025-55315 Questo aggiornamento della sicurezza risolve una vulnerabilità HTTP Request Smuggling a causa di un'analisi errata dell'estensione blocchi
vulnerabilità di divulgazione di informazioni .NET CVE-2025-55248 Questo aggiornamento della sicurezza risolve una vulnerabilità in cui SmtpClient può connettersi senza TLS anche se UseSsl è true

Versione 17.12.12

Data di rilascio: 9 settembre 2025

Correzioni di bug principali Dalla community
.NET runtime viene aggiornato alla versione 8.0.20 e 9.0.9 e .NET SDK alla versione 9.0.110

Versione 17.12.11

Data di rilascio:12 agosto 2025

Correzioni di bug principali Dalla community
Le versioni dell'SDK di Windows seguenti sono state rimosse dal programma di installazione di Visual Studio 2022: 10.0.18362.0, 10.0.20348.0 e 10.0.22000.0. Se in precedenza è stata installata una di queste versioni dell'SDK usando Visual Studio verrà disinstallata quando si esegue l'aggiornamento. Se il progetto è destinato a uno di questi SDK, è possibile che venga visualizzato un errore di compilazione, ad esempio: Il Windows SDK versione 10.0.22000.0 non è stato trovato. Installare la versione richiesta di Windows SDK o modificare la versione dell'SDK nelle pagine delle proprietà del progetto oppure facendo clic con il pulsante destro del mouse sulla soluzione e selezionando "Retarget solution". Per risolvere questo problema, è consigliabile impostare nuovamente il progetto su 10.0.0.26100.0 o una versione supportata precedente, se necessario. Per un elenco completo delle versioni di SDK supportate, vedere: https://developer.microsoft.com/windows/downloads/sdk-archive/. Se è necessario installare una versione non supportata dell'SDK, è possibile trovarla qui: https://developer.microsoft.com/windows/downloads/sdk-archive/index-legacy/.

Versione 17.12.10

Data di rilascio: 8 luglio 2025

Avvisi di sicurezza risolti CVE Descritpion
Visual Studio - Elevazione dei privilegi CVE-2025-49739 Time-of-check-of-use nel servizio agente di raccolta standard consente l'escalation dei privilegi locali
Vulnerabilità degli argomenti Gitk CVE-2025-27613 Vulnerabilità degli argomenti Gitk
Vulnerabilità di esecuzione del codice Abitryary gitk CVE-2025-27614 Vulnerabilità di esecuzione del codice Abitryary gitk
Vulnerabilità di Git Malicious Shell CVE-2025-46334 Vulnerabilità di Git Malicious Shell
Vulnerabilità di sovrascrittura file Git CVE-2025-46835 Vulnerabilità di sovrascrittura file Git
Vulnerabilità di Git Symlink CVE-2025-48384 Vulnerabilità di Git Symlink
Vulnerabilità di inserimento del protocollo Git CVE-2025-48385 Vulnerabilità di inserimento del protocollo Git
Vulnerabilità dell'helper delle credenziali Git CVE-2025-48386 Vulnerabilità dell'helper delle credenziali Git

Versione 17.12.9

Data di rilascio:10 giugno 2025

Correzioni di bug principali Dalla community
La copertura di sanificatore produce codicegeno non valido ticket di feedback
Codegen non valido durante il salvataggio dei dati in un oggetto std::array ticket di feedback
Errore di intercettazione atol_static ASAN ticket di feedback
Aggiornamento del programma di installazione di Visual Studio per includere le versioni di manutenzione più recenti per Windows SDK 10.0.19041.0 e 10.0.22621.0.
Avvisi di sicurezza risolti CVE Descritpion
Visual Studio vulnerabilità di esecuzione di codice remoto CVE-2025-47959 La neutralizzazione non corretta degli elementi speciali usati in un comando ('command injection') in Visual Studio consente a un utente malintenzionato autorizzato di eseguire il codice in una rete.
vulnerabilità di esecuzione di codice remoto .NET e Visual Studio CVE-2025-30399 Percorso di ricerca non attendibile in .NET e Visual Studio consente a un utente malintenzionato non autorizzato di eseguire codice in rete.

Versione 17.12.8

Data di rilascio:13 maggio 2025

Correzioni di bug principali Dalla community
Un aggiornamento recente di Visual Studio causa l'arresto anomalo di un'app che funzionava bene durante la compilazione con le versioni precedenti di Visual Studio. ticket di feedback
È stato risolto un problema nel criterio di archiviazione TFVC dell'elemento di lavoro query moderno che impediva il recupero del nome del progetto. È stato risolto anche un problema nei criteri di archiviazione TFVC per i modelli non consentiti che causavano l'"oblio" dei criteri dopo la creazione. ticket di feedback
La purificazione degli indirizzi in Release può introdurre bug ticket di feedback
Generazione di codice non corretta con /arch:SSE4.2 (genera inserimenti immediati non corretti) ticket di feedback
Correzione del reindirizzamento dell'associazione per l'assembly System.Reflection.MetadataLoadContext, consentendo a Visual Studio Code ed estensioni di fare riferimento alle versioni precedenti di tale assembly ed essere comunque eseguite correttamente nel processo di devenv.exe.
Correzione di errori intermittenti nel set di strumenti del linguaggio C++ che si manifestano come D8000: UNKNOWN COMMAND LINE errori ticket di feedback
È stato risolto un problema per impedire il riordinamento dell'istruzione AVX sul percorso di esecuzione esclusivamente SSE2. ticket di feedback
Correzione dell'errore di contesto non supportato nella finestra Contenitori.
Avvisi di sicurezza risolti CVE
Accesso alla traccia ETW non nota dall'amministratore che installa Visual Studio nel computer CVE-2025-32703
Esecuzione di codice remoto a causa dello squatting del pacchetto NuGet CVE-2025-32702
.NET - Spoofing - Elevazione dei privilegi nei comportamenti predefiniti delle attività DownloadFile di msbuild CVE-2025-26646

Versione 17.12.7

Data di rilascio: 8 aprile 2025

Correzioni di bug principali Dalla community
È stato aggiunto il supporto per i criteri di archiviazione tfvc moderni, nonché indicazioni e avvisi quando vengono applicati i criteri di archiviazione TFVC obsoleti.
Bug della race condition visualCppTools/ppltasks.h in when_any ticket di feedback
Correzione dell'errore di collegamento arm64EC esterno non risolto #_guard_dispatch_icall_$fo$ ticket di feedback
Avvisi di sicurezza risolti CVE
Visual Studio node.js vulnerabilità di esecuzione remota del percorso di ricerca non attendibile CVE-2025-29802
vulnerabilità di esecuzione remota del percorso di ricerca non attendibile di Android JDK Visual Studio CVE-2025-29804
ASP.NET Core 8 Denial of Service con HTTP/3 CVE-2025-26682

Versione 17.12.6

data di rilascio: 11 marzo11, 2025

Correzioni di bug principali Dalla community
Correzione di un problema di inizializzazione non corretto per determinati struct con membri di dimensioni zero.
Address Sanitizer (ASan) ora si collega a OneCoreUAP_apiset.lib, una libreria generica, anziché direttamente alle librerie Win32. Si tratta di rendere ASan più portabile su più versioni e dispositivi del sistema operativo. Se il codice dipende in modo transitivo dai moduli Win32 portati da ASan (non consigliato), potrebbe trattarsi di una modifica che causa un'interruzione. In questi casi, ti consigliamo di collegare il programma direttamente alle librerie di dipendenze Win32 necessarie. ticket di feedback
È stato risolto un problema di ridenominazione inline C# in cui è stato selezionato l'intero identificatore quando erano disponibili suggerimenti per la ridenominazione. Ciò eseguirà l'override della selezione dello sviluppatore e potrebbe causare errori di digitazione, soprattutto se lo sviluppatore ha spostato il cursore all'interno dell'interfaccia di ridenominazione inline. Ora, Copilot suggerimenti di ridenominazione non modificherà la selezione all'interno dell'interfaccia di ridenominazione inline. ticket Feedback ticket
È stato risolto un problema a causa del quale le DLL instrumentate scaricate durante l'esecuzione del test di input di fuzzer causeranno un report di errore ASan falso positivo e un arresto anomalo. ticket di feedback
Ice x86 di nuovo dopo l'aggiornamento dei dati di ottimizzazione PGO ticket di feedback
È stato risolto un problema per cui i clienti con hardware grafico Intel potevano riscontrare lo scorrimento ritardato nell'editor dopo aver attivato un'anteprima dell'immagine al passaggio del mouse. ticket di feedback
VS2022 Professional - Non è possibile accedere all'account m ticket di feedback
Rimosso l'elenco a discesa degli argomenti della riga di comando per attenuare un blocco dell'interfaccia utente nell'esperienza unreal Engine.
I progetti Blazor interrompino IntelliSense 17.12.2 ticket di feedback
Avvisi di sicurezza risolti CVE
vulnerabilità di elevazione dei privilegi Visual Studio CVE-2025-25003
vulnerabilità di elevazione dei privilegi .NET CVE-2025-24070
vulnerabilità di elevazione dei privilegi del programma di installazione Visual Studio CVE-2025-24998

Versione 17.12.5

data di rilascio: 11 febbraio, 2025

Correzioni di bug principali Dalla community
È stato risolto un problema per cui a volte lo strumento Utilizzo CPU non visualizzava risultati anche se in precedenza sono stati acquisiti dati.
MSVC Code Analysis ora può rilevare l'uso di puntatori angling che puntano alle risorse in oggetti temporanei eliminati quando vengono usati nell'elenco di inizializzatori di una matrice. ticket di feedback
Errore con String::Format nel progetto libreria di classi CLR C++ (.NET) ticket di feedback
Regressione nella versione 17.12.0: Errore C3699 durante la compilazione con /CLR ticket di feedback
Aggiornamento dell'SDK di Windows 11 (10.0.26100.0) installato da Visual Studio alla build di manutenzione di gennaio 2025.
Correzione di un bug nell'utilità di ottimizzazione che comportava codicegeno non corretto ed è stato rilevato un impatto sulla funzione std::sort quando viene chiamato da una coroutine.
Avvisi di sicurezza risolti CVE
Visual Studio'elevazione dei privilegi del programma di installazione : l'elemento Percorso di ricerca non controllato consente a un utente malintenzionato non autorizzato di elevare i privilegi in locale. CVE-2025-21206

Versione 17.12.4

data di rilascio: 14 gennaio14, 2025

Correzioni di bug principali Dalla community
È stata risolta un'incompatibilità tra Live++ (uno strumento di Ricaricamento rapido C++ di terze parti) e Visual Studio 2022. ticket di feedback
È stato risolto un blocco in Tutte leIn-One Ricerca (CTRL+T, CTRL+Q). ticket di feedback
Visual Studio Debugger non può visualizzare i valori nella finestra 'Variabili locali'. ticket di feedback
Correzione di un bug che causava l'arresto anomalo immediato di Visual Studio e la chiusura quando si apre il Gestione pacchetti NuGet se il riquadro dei dettagli sul lato destro era molto piccolo. ticket di feedback
È stato risolto un problema per cui il passaggio del mouse su un file Docker poteva bloccarsi vs.
È stato risolto un problema relativo all'inizializzazione non corretta per determinati struct con membri di dimensioni zero.
È stato risolto un problema per le destinazioni x86 in cui i registri dei frame usati durante le coroutine potrebbero non essere ricaricati correttamente. ticket di feedback
VS include ora MAUI 8.0.100 (SR10); MAUI 9.0.14 (SR1.4)
Sintassi fissa sfarfallio durante lo scorrimento tramite https://github.com/dotnet/roslyn/pull/75796||
Avvisi di sicurezza risolti CVE
vulnerabilità di esecuzione di codice remoto .NET e Visual Studio CVE-2025-21172
vulnerabilità .NET, .NET Framework e Visual Studio esecuzione di codice remoto CVE-2025-21176
Visual Studio vulnerabilità di esecuzione di codice remoto CVE-2025-21178
Il carattere ritorno a capo nell'URL remoto consente al repository dannoso di perdere credenziali CVE-2024-50338
.NET vulnerabilità di esecuzione di codice remoto CVE-2025-21171
(solo Linux) vulnerabilità di elevazione dei privilegi .NET CVE-2025-21173
vulnerabilità di elevazione dei privilegi Visual Studio CVE-2025-21405

Versione 17.12.3

rilasciata il 3 dicembrerd, 2024

Correzioni di bug principali Dalla community
Errori NuGet dopo l'aggiornamento da VS v17.11.6 a v17.12 con .NET 9. ticket di feedback
Messaggi Unity privati contrassegnati in modo non corretto come IDE0051 inutilizzati. ticket di feedback
IntelliSense ha smesso di funzionare in Word progetto C++. ticket Feedback ticket
È stato risolto un problema per cui i caratteri potrebbero essere duplicati durante la digitazione in un file contenente una lingua incorporata. ticket Feedback ticket
È stato risolto un problema per cui la risoluzione dei conflitti di merge nei file con estensione razor e nei file con estensione cshtml generava una finestra vuota. ticket di feedback
Azure Devops Permalink da Visual Studio 2022 non funziona. ticket Feedback ticket
È stato risolto un problema per cui Visual Studio si arrestava in modo anomalo se la variabile di ambiente DOTNET_SYSTEM_GLOBALIZATION_INVARIANT era impostata su 1. ticket di feedback
Correzione dell'errore di avvio del profiler delle prestazioni per i progetti C++. ticket di feedback

Versione 17.12.2

rilasciato Novemeber 26th, 2024

Correzioni di bug principali Dalla community
IntelliSense C++ non visualizza più errori per i progetti che funzionavano in IntelliSense in Visual Studio 17.11. ticket di feedback
Il processo Copilot indicizzatore non blocca più i file. ticket di feedback
Correzione di un arresto anomalo del compilatore nel codice C++/CLI destinato a .NET Core e usa matrici param. ticket di feedback
note sulla versione di .NET per iOS/tvOS/macOS/macCatalyst
Dopo Windows KB5041580 di aggiornamento, Visual Studio si arresta automaticamente all'apertura di una finestra dell'editor di merge. ticket Feedback ticket
[LKG18] Alcune funzioni con wrapping ridotto contengono informazioni di rimozione incomplete nei frammenti secondari. ticket di feedback
Errore interno del compilatore C1001 per la build arm64. ticket di feedback
Arresto anomalo di SSDT con errore critico rilevato in VS17.12. ticket di feedback

Versione 17.12.1

rilasciato Novemeber 19th, 2024

Correzioni di bug principali Dalla community
È stato risolto il problema di sintassi di sfarfallio del colore durante lo scorrimento tramite https://github.com/dotnet/roslyn/pull/75796
Questa versione include gli aggiornamenti per mantenere la conformità alle leggi internazionali sulla lingua.

Da tutti noi del team, grazie per aver scelto Visual Studio. Per eventuali domande, contattare microsoft su Twitter o Developer Community.

Codice felice!
Il team di Visual Studio


Nota

Questo aggiornamento può includere nuovi Microsoft o software di terze parti concessi in licenza separatamente, come indicato nella 3rd Party Notices o nella relativa licenza associata.