Visual Studio IconNote sulla versione di Visual Studio 2015


Condizioni di licenza della community per sviluppatori di blog di | Visual Studio |

Nota

Questa non è la versione più recente di Visual Studio. Per scaricare la versione più recente, vedere le note sulla versione corrente per Visual Studio 2019.


Versioni di Visual Studio 2015

È possibile visualizzare le note sulla versione per tutte le versioni di Visual Studio 2015:

Scarica Visual Studio 2015

È possibile scaricare Visual Studio 2015 da My.VisualStudio.com. My.VisualStudio.com richiede una sottoscrizione Dev Essentials gratuita o una sottoscrizione di Visual Studio.


Release Notes IconVisual Studio 2015

Data di rilascio: 20 luglio 2015

Riepilogo delle novità di questa versione

Altre modifiche:

Dettagli sulle novità di questa versione

Visual C++ per lo sviluppo di app per dispositivi mobili multipiattaforma

Ora è facile condividere, riutilizzare, compilare, distribuire ed eseguire il debug di tutto, ma il codice più specifico della piattaforma in più piattaforme app, tutto all'interno di una singola soluzione in Visual Studio. Ecco alcune delle operazioni che è possibile eseguire:

  • Creare progetti da modelli per app Android Native Activity o per librerie di codice condivise che è possibile usare in più piattaforme e in applicazioni Android native di Xamarin.

  • Usare IntelliSense specifico della piattaforma per esplorare le API e generare codice corretto per le destinazioni Android o Windows.

  • Configurare la build per piattaforme native x86 o ARM.

  • Distribuire il codice ai dispositivi Android collegati oppure usare l'efficiente emulatore Android di Microsoft per i test.

  • Impostare punti di interruzione, controllare le variabili, visualizzare lo stack ed eseguire il codice un'istruzione alla volta nel debugger di Visual Studio.

  • Visualizzare il log dei messaggi da un dispositivo Android usando il visualizzatore LogCat. Logcat è uno strumento di diagnostica ed è essenziale per un'esperienza di modifica-compilazione-debug>> ottimale.
    Usare Logcat per eseguire le operazioni seguenti:

    • Cercare messaggi di log specifici usando la barra di ricerca.
    • Usare Attiva/Disattiva registrazione automatica per visualizzare facilmente i messaggi di log imminenti.
    • Cancellare i messaggi di output del log precedenti.
    • Scegliere tra vari livelli di log.
  • Scrivere codice C++ destinato alla piattaforma iOS e sfruttare le funzionalità avanzate di creazione del codice, ad esempio, ma non solo, la condivisione del codice, IntelliSense multipiattaforma, il refactoring e la definizione di anteprima. Il supporto di iOS è ancora in corso, quindi tenere d'occhio per altre informazioni su questo presto. È possibile inviare commenti e suggerimenti usando Connessione per i bug. Inoltre, è possibile inviare i propri pensieri rapidi usando Send-a-Smile nell'IDE di Visual Studio.

Sono stati aggiunti o aggiornati anche gli elementi seguenti:

  • Supporto per Android API Level 21 (Lollipop).
  • Nuovo modello basato sul supporto dei file per Android, che consente l'uso di un sistema di compilazione esterno (incluso NDK- BUILD).
  • Intestazioni precompilate in tutti i modelli (inclusi libreria condivisa dinamica, libreria statica e modelli per dispositivi mobili multipiattaforma).

Strumenti di Visual Studio per Apache Cordova

In precedenza noto come App ibride multi-dispositivo per Visual Studio, il Strumenti di Visual Studio per Apache Cordova semplifica la compilazione, il debug e il test di app multipiattaforma destinate ad Android, iOS, Windows e Windows Telefono da un semplice progetto di Visual Studio.

Tutte le funzionalità disponibili nei CSP precedenti sono ora disponibili in Visual Studio 2015 RC, inclusi i miglioramenti seguenti:

  • Aggiornamento al salvataggio per Ripple : non è necessario ricompilare!
  • Eseguire il debug di una versione iOS dell'app da Visual Studio quando viene distribuita nel simulatore iOS o in un dispositivo connesso in un Mac
  • Sicurezza migliorata e configurazione semplificata per l'agente di compilazione iOS remoto incluso
  • Un'esperienza di gestione dei plug-in migliorata che include il supporto per l'aggiunta di plug-in personalizzati al progetto da Git o dal file system
  • Selezionare le opzioni di configurazione specifiche della piattaforma da una finestra di progettazione config.xml migliorata
  • Supporto per Apache Cordova 4.0.0.

Abbiamo ascoltato i commenti e suggerimenti e ampliato il numero di dispositivi a cui è possibile eseguire il debug, come indicato di seguito:

  • Android 4.4, Android 4.3 e versioni precedenti con jsHybugger
  • iOS 6, 7 e 8
  • Windows Store 8.1

È stato quindi ampliato ulteriormente il supporto per il debug. È ora possibile eseguire il debug delle app Apache Cordova destinate a Windows Telefono 8.1.

È possibile impostare punti di interruzione, controllare le variabili, usare la console ed eseguire altre attività di debug nell'emulatore di Windows Telefono 8.1 o nel dispositivo collegato.

Debugging with Visual Studio Tools for Apache Cordova

È stata aggiunta l'interoperabilità dell'interfaccia della riga di comando per la versione RC. I progetti Cordova in Visual Studio verranno ora sincronizzati con le modifiche apportate alla cartella del progetto su disco. Le modifiche possono essere propagate da e in Visual Studio, indipendentemente dal fatto che si stia lavorando con strumenti di terze parti o in altri sistemi operativi. La struttura di file predefinita per i progetti Cordova si basa sulla struttura prevista dagli strumenti da riga di comando di Apache Cordova, che semplifica il funzionamento diretto con l'interfaccia della riga di comando di Apache Cordova o altri strumenti che prevedono tale struttura di cartelle.

Emulatore di Visual Studio per Android

È possibile usare Visual Studio Emulator per Android in un progetto multipiattaforma in Visual Studio (Xamarin o C++) o in Strumenti di Visual Studio per Apache Cordova. L'emulatore consente di passare da emulatori di piattaforma diversi senza conflitti di Hyper-V. Supporta un'ampia gamma di sensori e simulazioni, tra cui GPS/Posizione, accelerometro, rotazione dello schermo, zoom, scheda SD, fotocamera, multitocco e accesso alla rete. Supporta anche android versioni 4.4 (KitKat, livello API 19) e 5.0 (Lollipop, livello API 21).

L'emulatore di Visual Studio per Android supporta sia la simulazione WiFi che la possibilità di scegliere tra diverse configurazioni hardware del dispositivo.

Sono state aggiunte le nuove funzionalità seguenti per RTM:

  • Nuove piattaforme. Sono disponibili immagini Jellybean (API 17) e Lollipop 5.1 (API 22).
  • Interfaccia della riga di comando. Passando a %programfiles(x86)%\Microsoft Emulator Manager\1.0\emulatorcmd.exe in un prompt dei comandi sarà possibile interagire con gestione emulatori (elenco, installazione, profili di avvio e così via) senza un'interfaccia utente.
  • Librerie ZIP di trascinamento della selezione. Trascinando e rilasciando un zip lampeggiabile nell'emulatore, verrà automaticamente decompresso e installato.
  • Scheda SCHEDA SD. Questa nuova scheda nella finestra "Strumenti aggiuntivi" consente di eseguire il push e il pull dei dati da e verso la scheda SD.
  • Acquisire autonomamente. L'emulatore può essere installato in un computer senza che sia necessario installare Visual Studio. Un collegamento a Gestione emulatori viene visualizzato nella menu Start in modo che sia possibile avviarlo e usarlo da qualsiasi catena di strumenti di sviluppo.

Per altre informazioni, vedere Emulatore di Visual Studio per Android.

Strumenti di Visual Studio per lo sviluppo di app di Windows universali

Gli strumenti di Visual Studio per lo sviluppo di app di Windows universali sono integrati con la configurazione di Visual Studio. Questi strumenti ti consentono di creare app di Windows eseguite su tutti i dispositivi Windows 10, ovvero il telefono in tasca, il tablet o il portatile nella tua borsa, il PC sulla scrivania, i dispositivi IoT e presto, le console Xbox nella tua casa, Surface Hub e altro ancora. Inoltre, puoi anche usare questi strumenti per creare applicazioni desktop di Windows che sfruttano le API di Windows 10. Per altre informazioni, vedere Novità di Strumenti di Visual Studio per le app di Windows universali.

Per altre informazioni sullo sviluppo di app di Windows, vedi la Guida alle app di Windows universali e al Centro per sviluppatori Windows. Per informazioni sulle build e sugli SDK di Windows più recenti, vedere il portale di Windows Insider .

Visual C++

In questa versione il compilatore C++ e la libreria standard sono stati aggiornati con il supporto avanzato per C++11 e il supporto iniziale per determinate funzionalità di C++14. È inoltre incluso il supporto preliminare per determinate funzionalità previste per lo standard C++17.

Inoltre, sono stati corretti più di 500 bug del compilatore, inclusi molti inviati dai clienti tramite Microsoft Developer Community , grazie!

Funzionalità del linguaggio

Sono state aggiunte le nuove funzionalità seguenti per avvicinare il compilatore allo standard C++:

  • Funzioni ripristinabili (resume/await) Le parole chiave resume e await forniscono il supporto a livello di linguaggio per la programmazione asincrona e abilita le funzioni ripristinabili. Attualmente questa funzionalità è disponibile solo per destinazioni x64. Proposta per C++17 [N3858]
  • È ora possibile specificare i tipi di parametri di funzione lambda generici (Polymorphic) tramite auto. Il compilatore interpreta automaticamente in questo contesto per indicare che l'operatore di chiamata di funzione della chiusura è un modello di funzione membro e che ogni uso di auto nell'espressione lambda corrisponde a un parametro di tipo modello distinto. C++14
  • Espressioni di acquisizione lambda generalizzate note anche come init-capture. Il risultato di un'espressione arbitraria ora può essere assegnato a una variabile nella clausola di acquisizione di un'espressione lambda. Questo consente ai tipi di solo spostamento di essere acquisiti in base al valore e consente a un'espressione lambda di definire membri dati arbitrari nel relativo oggetto di chiusura. C++14
  • I valori letterali binari sono ora supportati. Tali valori letterali sono preceduti da 0B o 0b e comprendono solo le cifre 0 e 1. C++14
  • Deduzione del tipo restituito Il tipo restituito di funzioni normali può ora essere dedotto, incluse funzioni con più istruzioni restituite e funzioni ricorsive. Tali definizioni di funzione sono precedute dalla parola chiave auto come nelle definizioni di funzione con un tipo restituito finale, ma il tipo restituito finale viene omesso. C++14
  • decltype(auto) Deduzione del tipo usando la parola chiave auto per inizializzare le espressioni strips ref-qualificatori e qualificatori cv di primo livello dall'espressione. decltype(auto) mantiene i qualificatori ref e cv e può ora essere usato ovunque sia possibile usare auto, tranne per introdurre una funzione con un tipo restituito derivato o finale. C++14
  • La generazione implicita dei costruttori move special member functions move e gli operatori di assegnazione di spostamento vengono ora generati in modo implicito quando le condizioni consentono, portando il compilatore in conformità completa ai riferimenti rvalue C++11. C++11
  • Ereditando costruttori Una classe derivata può ora specificare che erediterà i costruttori della relativa classe di base, Base, includendo l'istruzione utilizzando Base::Base; nella relativa definizione. Una classe derivata può ereditare solo tutti i costruttori della relativa classe base, non è possibile ereditare solo determinati costruttori base. Una classe derivata non può ereditare da più classi base se dispongono di costruttori che dispongono di una firma identica, né può la classe di derivazione definisce un costruttore che ha una firma identica a uno dei costruttori ereditati. C++11
  • Align Query and Control L'allineamento di una variabile può essere sottoposto a query usando l'operatore alignof() e controllato tramite l'identificatore alignas(). alignof() restituisce il limite di byte sulle istanze del tipo che deve essere allocato; per i riferimenti restituisce l'allineamento del tipo a cui viene fatto riferimento e per le matrici restituisce l'allineamento del tipo di elemento. alignas() controlla l'allineamento di una variabile; accetta una costante o un tipo, in cui un tipo è abbreviato per alignas (alignof(type)). C++11
  • Extended sizeof Le dimensioni di una variabile membro di classe o struct possono ora essere determinate senza un'istanza della classe o dello struct usando sizeof(). C++11
  • constexpr Supporto parziale per C++11 constexpr. C++11 (parziale)
  • I suffissi significativi definiti dall'utente possono ora essere aggiunti a valori letterali numerici e stringa per fornire una semantica specifica. Il compilatore interpreta i valori letterali suffissi come chiamate all'operatore UDL appropriato. C++11
  • Thread-Cassaforte variabili locali statiche "Magic" statiche sono ora inizializzate in modo thread-safe, eliminando la necessità di sincronizzazione manuale. Solo l'inizializzazione è thread-safe, mentre per l'uso delle variabili locali statiche da parte di più thread è ancora necessario eseguire manualmente la sincronizzazione. La funzionalità di elementi statici thread-safe può essere disabilitata usando il contrassegno /Zc:threadSafeInit- per evitare di creare una dipendenza da CRT. C++11
  • Thread-Local Archiviazione Usare la parola chiave thread_local per dichiarare che deve essere creato un oggetto indipendente per ogni thread. C++11
  • L'operatore noexcept può ora essere usato per verificare se un'espressione potrebbe generare un'eccezione. L'identificatore noexcept può ora essere usato per specificare che una funzione non genera eccezioni. C++11
  • Spazi dei nomi inline Uno spazio dei nomi può ora essere specificato come inline per raggruppare il contenuto nello spazio dei nomi che lo racchiude. Gli spazi dei nomi inline possono essere usati per creare librerie con versione che espongono la versione più recente per impostazione predefinita, pur mantenendo in modo esplicito la disponibilità di versioni precedenti dell'API. C++11
  • Unioni senza restrizioni Un tipo di unione può ora contenere tipi con costruttori non semplici. È necessario definire costruttori per tali unioni. C++11
  • Sono stati introdotti nuovi tipi di caratteri e valori letterali unicode carattere e valori letterali stringa in UTF-8, UTF-16 e UTF-32. Sono stati introdotti nuovi tipi di caratteri char16_t e char32_t. I valori letterali carattere possono essere preceduti da u8 (UTF-8), u (UTF-16) o U (UTF-32) come in U'a', mentre i valori letterali stringa possono essere preceduti dagli equivalenti in formato stringa non elaborata u8R (UTF-8 stringa non elaborata), uR (UTF-16 stringa non elaborata) o UR (UTF-32 stringa non elaborata). I nomi di caratteri universali possono essere usati liberamente nei valori letterali Unicode come in u'\u00EF', u8"\u00EF is i" e you"\U0000000ef is I". C++11
  • func Il func identificatore predefinito è definito in modo implicito come stringa che contiene il nome non qualificato e non adorabile della funzione di inclusione. C++11
  • __restrict __restrict ora possono essere applicati ai riferimenti.
  • Parola chiave Typename. Gli utenti possono ora scrivere typename anziché classe in un parametro di modello di modello. C++14
  • È ora possibile eseguire l'overload dell'operatore globals void delete(void *, std::size_t) noexcept e void operator delete[](void *, std::size_t). C++14
  • Separatori di cifre Ora è possibile intersperse valori letterali numerici con virgolette singole per renderli più leggibili. Ad esempio, int x = 1'000'000;. C++14
  • Nomi di caratteri universali nei valori letterali È ora possibile scrivere caratteri di base, ad esempio "A" e il carattere di avanzamento riga, come punti di codice nei valori letterali. Ad esempio, const char *s = "\u0041\u000A";. C++11
  • Gli inizializzatori di membri dati non statici ora funzionano correttamente con gli elenchi di inizializzatori. C++11
  • Attributi È ora possibile specificare una funzione come [[noreturn]] per indicare al compilatore che la funzione non restituisce (anche se può generare un'eccezione). È ora possibile specificare vari costrutti anche come [[deprecato]]. Gli attributi sono ora consentiti per gli spazi dei nomi e gli enumeratori. C++11, C++14 e C++17
  • I valori letterali numerici e stringa definiti dall'utente possono ora avere suffissi significativi che eseguono calcoli personalizzati sui dati letterali. C++11
  • Attributi di ordinamentodelle dipendenze dati È ora possibile specificare parametri di funzione, parametri lambda o dichiarazioni di funzione come [[carries_dependency]] per migliorare le ottimizzazioni per le strutture di dati simultanee che vengono lette frequentemente ma raramente modificate. C++11
  • Le nuove regole per l'auto con parentesi graffa-init-list Deduzione automatica per le inizializzazioni copy-list ora dedurranno uno std::initializer_list o non saranno formate in caso contrario. C++17

Funzionalità della libreria Visual C++

  • I valori letterali definiti dall'utente (UDLs) per i tipi di libreria standard Le <intestazioni chrono>, <string> e <complex> forniscono ora operatori UDL per praticità. Ad esempio, 123ms significa std::chrono::milliseconds(123), "hello"s significa std::string("hello") e 3.14i significa std::complex(0.0, 3.14).
  • Iteratori di inoltro Null La libreria standard consente ora la creazione di iteratori in avanti che non fanno riferimento a un'istanza del contenitore. Tali iteratori sono inizializzati dal valore e risultano uguali per un tipo di contenitore specifico. Il confronto tra un iteratore inizializzato da un valore e uno non inizializzato da un valore non è definito. C++14
  • quoted() La libreria standard supporta ora la funzione quoted() per semplificare l'uso di valori stringa tra virgolette e I/O. Con quoted(), un'intera stringa tra virgolette viene considerata come una singola entità (come lo sono le stringhe di caratteri diversi da spazi vuoti nei flussi I/O). Inoltre, le sequenze di escape vengono mantenute tramite operazioni di I/O. C++14
  • Ricerca associativa eterogenea La libreria standard supporta ora funzioni di ricerca eterogenee per contenitori associativi. Tali funzioni abilitano la ricerca per tipi diversi da key_type, purché il tipo sia paragonabile a key_type. C++14
  • Compile-Time Integer Sequences La libreria standard supporta ora il tipo integer_sequence che rappresenta una sequenza di valori integer che possono essere valutati in fase di compilazione per semplificare l'uso dei pacchetti di parametri e semplificare determinati modelli di programmazione dei modelli. C++14
  • exchange() La libreria standard supporta ora la funzione di utilità std::exchange() per assegnare un nuovo valore a un oggetto e restituisce il valore precedente. Per i tipi complessi, exchange() evita di copiare il valore precedente quando è disponibile un costruttore di spostamento, evita di copiare il nuovo valore se è temporaneo o viene spostato e accetta qualsiasi tipo come nuovo valore sfruttando qualsiasi operatore di assegnazione di conversione. C++14
  • Dual-Range equal(), is_permutation(), mismatch() La libreria standard supporta ora gli overload per std::equal(), std::is_permutation() e std::mismatch() che accettano due intervalli. Questi overload gestiscono sequenze di lunghezze diverse. C++14
  • get<T>() La libreria standard supporta ora la funzione modello get<T>() per consentire l'indirizzazione degli elementi della tupla in base al tipo. Se una tupla contiene due o più elementi dello stesso tipo get<T>() la tupla non può essere risolta da tale tipo. Tuttavia, è comunque possibile indirizzare altri elementi tipizzato in modo univoco. C++14
  • tuple_element_t La libreria standard supporta ora l'alias di tipo T> tuple_element_t<, ovvero un alias per typename tuple_element<I, T>::type. Ciò offre alcuni praticità per i programmatori di modelli, simili agli altri alias di tipo metafunzione in <type_traits>. C++14
  • Specifica tecnica del file system "V3" L'implementazione inclusa della specifica tecnica del file system è stata aggiornata alla versione finale.
  • Allocatori minimi La libreria standard supporta ora l'interfaccia di allocatore minima in tutto; le correzioni rilevanti includono std::function, shared_ptr, allocate_shared() e basic_string. C++11
  • <chrono> I tipi chrono high_resolution_clock e steady_clock sono stati fissi. C++11
  • Constexpr è stato implementato in tutta la libreria standard C++. C++11, C++14 e C++17
  • quick_exit() È ora possibile terminare i processi multithreading in modo più pulito chiamando quick_exit() ed eseguire il codice di pulizia in at_quick_exit(). C++11
  • void_t supporta la metaprogrammazione avanzata dei modelli. C++17
  • Le conversioni in unique_ptr<T[]> sono ora consentite se sono note come sicure. C++17
  • invoke() consente di chiamare oggetti funzione, puntatori alle funzioni membro e puntatori ai membri dati con sintassi uniforme. C++17
  • noexcept La libreria standard ha pulito l'uso di noexcept su determinate funzioni. C++17
  • uncaught_exceptions() segnala il numero di eccezioni in anteprima (che possono essere più di 1). C++17
  • reference_wrapper ora è facilmente copiabile. C++17
  • map/unordered_map supporta ora insert_or_assign()/try_emplace(). C++17
  • Sono ora disponibili funzioni non membro size(),empty()e data(). C++17
  • auto_ptr, random_shuffle() e i vecchi <macchinari funzionali> sono stati deprecati in C++11/14 e rimossi in C++17. Visual Studio 2015 li fornisce per impostazione predefinita, ma la definizione di _HAS_AUTO_PTR_ETC a 0 a livello di progetto rimuove le relative definizioni.
  • unique_ptr assegnazioni sono ora vincolate con precisione. C++17
  • bool_constant è ora supportato come alias per integral_constant<bool>. C++17

Compilazioni più veloci di Visual C++

  • Generazione di codice incrementale tempo collegamento (LTCG) Ora è possibile indicare al LTCG di ricompilare solo le parti del progetto interessate da una modifica. Ciò può ridurre significativamente i tempi di collegamento delle applicazioni che usano LTCG. Attivare questa funzionalità usando l'opzione del linker /LTCG:incrementale.
  • Collegamento incrementale per le librerie statiche Modifiche alle librerie statiche a cui fanno riferimento altri moduli di codice ora si collegano in modo incrementale.
  • /Debug:FastLink riduce notevolmente i tempi di collegamento usando nuove tecniche di creazione PDB.
  • Sono stati apportati miglioramenti algoritmici al linker di ridurre i tempi di collegamento.
  • Sono stati apportati miglioramenti che consentono di creare codice complesso per modelli più rapidamente.
  • Strumentazione PGO (Fast Profile Guided Optimization) È stata introdotta in PGO una nuova modalità di strumentazione leggera e leggera per i giochi e i sistemi in tempo reale. Insieme alle altre nuove funzionalità disponibili tramite le opzioni del linker /GENPROFILE e /FASTGETPROFILE è ora possibile bilanciare qualità del codice e velocità di compilazione quando si usa PGO.
  • I miglioramenti della riduzione delle dimensioni dei file oggetto Compilatore e libreria standard C++ comportano file oggetto e librerie statiche significativamente più piccoli. Questi miglioramenti non influenzano le dimensioni di librerie collegate in modo dinamico (DLL) o file eseguibili (EXE) perché il codice ridondante è stato rimosso dal linker.

Prestazioni e qualità del codice di Visual C++

  • Miglioramenti alla vettorizzazione automatica. È stata migliorata la vettorizzazione del flusso di controllo (if-then-else), la vettorizzazione durante la compilazione in /O1 (dimensioni ridotte a icona) e la qualità complessiva del codice vettoriale, incluso il supporto per paralleli STL, la vettorizzazione di cicli for più intervalli e il supporto per i cicli #pragma(ivdep).
  • Miglioramenti all'ottimizzazione scalare. È stata aggiunta una migliore generazione di codice di operazioni di test di bit, unione del flusso di controllo e ottimizzazioni (cambio loop-if) e altre ottimizzazioni scalari (ad esempio, generazione di codice migliore per std::min e std::max).
  • Ottimizzazione pgo (Profile Guided Optimization). Sono stati apportati numerosi miglioramenti al PGO, inclusi set di riferimenti migliorati, funzionalità di layout dei dati migliori e la possibilità di riutilizzare in precedenza l'inlining, la velocità e le dimensioni e le decisioni relative al layout.
  • Control Flow Guard (CFG). È stata aggiunta una nuova funzionalità di sicurezza; è sufficiente aggiungere una nuova opzione al progetto e il compilatore di Visual C++ ora inserirà controlli di sicurezza aggiuntivi nei file binari per rilevare i tentativi di dirottamento del codice. Quando il controllo viene attivato, interromperà l'esecuzione del codice prima che un dirottatore possa danneggiare i dati o il PC.

Nota

Sono state aggiornate le opzioni del comando. Anziché usare l'opzione /d2guard4 come nelle versioni precedenti, è ora consigliabile usare /guard:cf.

Produttività, debug e diagnostica di Visual C++

È stato aggiunto il supporto del refactoring per C++ con le funzionalità seguenti:

  • Rinomina simbolo Consente di modificare tutte le occorrenze di un simbolo in un nuovo nome.
  • Estrazione funzioni Spostare il codice selezionato nella propria funzione. Questo refactoring è disponibile come estensione per Visual Studio in Visual Studio Gallery.
  • Implementare Pure Virtuals Genera definizioni di funzione per le funzioni virtuali pure ereditate da una classe o una struttura. Sono supportate eredità sia multiple che ricorsive. Attivare questo refactoring dalla definizione della classe a eredità per implementare tutte le funzioni virtuali pure ereditate oppure da un identificatore di classe base per implementare funzioni virtuali pure solo da tale classe base.
  • Create Declaration o Definition Genera una dichiarazione da una definizione esistente o una definizione predefinita da una dichiarazione esistente. Accedere a questo refactoring dalla dichiarazione o dalla definizione esistente o dall'indicatore della lampadina.
  • Sposta definizione funzione Sposta il corpo di una funzione tra il codice sorgente e i file di intestazione. Attivare questo refactoring dalla firma della funzione.
  • Convert to Raw String Literal Converte una stringa contenente sequenze di escape in un valore letterale stringa non elaborata. Le sequenze di escape supportate sono \n (nuova riga), \t (tab), ' (virgolette singole), " (virgolette doppie) e ? (punto interrogativo). Attivare questa funzionalità facendo clic in un punto qualsiasi all'interno di una stringa.

I miglioramenti del database di programma (PDB) in Visual C++ includono quanto segue:

  • La velocità di analisi della soluzione è stata migliorata, in particolare per quanto riguarda soluzioni di grandi dimensioni.
  • Operazioni quali Vai a definizione non vengono più bloccate nel corso dell'analisi della soluzione ad eccezione delle analisi iniziali, quando una soluzione viene ad esempio aperta per la prima volta.

Miglioramenti della leggibilità di IntelliSense: le istanze di modelli complessi e i typedef sono semplificati nella Guida dei parametri e nelle informazioni rapide per semplificarne la lettura.

Visualizzazioni del debugger in C++

Aggiungere visualizzazioni del debugger Natvis al progetto di Visual Studio per semplificare la gestione e l'integrazione del controllo del codice sorgente. I file Nativs aggiunti a un progetto assumono precedenza di valutazione rispetto ai visualizzatori Nativs esterni al progetto. Per altre informazioni, vedere Creare viste personalizzate di oggetti nativi nel debugger.

Dal momento che RC, è possibile usare i file Natvis durante il debug di C++ in Android. Il debugger include visualizzazioni per molti modelli comuni e supporta il caricamento di file personalizzati aggiunti al progetto C++.

Diagnostica della memoria nativa

  • Le sessioni di diagnostica della memoria (ALT+F2) consentono di monitorare l'uso della memoria in tempo reale dell'applicazione nativa.
  • Gli snapshot di memoria acquisisce un'immagine momentanea del contenuto dell'heap dell'applicazione. Le differenze nello stato dell'heap possono essere esaminate confrontando due snapshot di memoria. Consente di visualizzare tipi di oggetto, valori delle istanze e stack di chiamate di allocazione per ogni istanza dopo l'arresto dell'applicazione.

Miglioramento del rilevamento e del ripristino dei deadlock quando si chiamano le funzioni C++ dalle finestre Espressioni di controllo e controllo immediato.

Miglioramento della diagnostica del compilatore: il compilatore fornisce avvisi avanzati sul codice sospetto. Sono stati aggiunti nuovi avvisi (ad esempio per variabili nascoste e stringhe di formato printf non corrispondenti). I messaggi di avviso esistenti sono stati resi più chiari.

Flag /Wv - Avvisi introdotti dopo una versione specifica del compilatore XX.YY. ZZZZ può essere disabilitato usando /Wv:XX.YY. Flag ZZZZ. Altri avvisi possono essere disabilitati in modo specifico, oltre a quelli specificati tramite il flag /Wv.

Supporto migliorato per il debug di codice ottimizzato: eseguire il debug del codice con i flag /Zi, /Zo o /Z7 abilitati.

Diagnostica grafica di Visual C++

La diagnostica della grafica è stata migliorata con le funzionalità seguenti:

  • Acquisizione consecutiva fino a 30 fotogrammi consecutivi con un'unica acquisizione.
  • Acquisizione programmatica Avviare l'acquisizione di fotogrammi a livello di codice. L'acquisizione a livello di codice è particolarmente utile per il debug di compute shader in programmi che non chiamano mai Present oppure quando un problema di rendering è difficile da acquisire manualmente, ma può essere previsto a livello di codice usando lo stato dell'app in fase di esecuzione.
  • Elenco di eventi grafici avanzati Viene aggiunta una nuova visualizzazione Chiamate disegno che visualizza gli eventi acquisiti e il relativo stato in una gerarchia organizzata dalle chiamate di disegno. È possibile espandere le chiamate di disegno per visualizzare lo stato del dispositivo al momento della chiamata di disegno ed espandere ulteriormente ogni tipo di stato per visualizzare gli eventi che ne hanno impostato i valori.
  • Il supporto per Diagnostica grafica di Windows Telefono 8.1 supporta ora completamente il debug di app di Windows nell'emulatore Telefono o in Telefono con tethering.
  • Analisi dei fotogrammi grafici Questo strumento raccoglie le misurazioni delle prestazioni sui fotogrammi acquisiti. Esegue inoltre un set di esperimenti predefiniti che forniscono informazioni dettagliate sulle prestazioni quando vengono applicate varie tecniche di trama. L'analisi dei frame raccoglie inoltre contatori delle prestazioni provenienti dall'hardware.
  • Interfaccia utente dedicata per l'analisi grafica La nuova finestra analizzatore grafica di Visual Studio è un'area di lavoro dedicata per l'analisi dei fotogrammi grafici.
  • Modifica shader e Applica visualizza l'impatto delle modifiche al codice dello shader in un log acquisito senza eseguire di nuovo l'app.
  • Configurare le opzioni di acquisizione in Strumenti-Opzioni-Diagnostica>> grafica.
  • Strumento da riga di comando per l'acquisizione e la riproduzione di fotogrammi.
  • Supporto della diagnostica grafica per DirectX 12. Lo strumento Diagnostica grafica di Visual Studio supporta ora il debug dei problemi di rendering nelle applicazioni DirectX 12.

Nuovo strumento utilizzo GPU

Lo strumento Utilizzo della GPU in Visual Studio 2015 consente di comprendere l'utilizzo della GPU delle applicazioni DirectX. Durante l'esecuzione dell'applicazione sono disponibili grafici in tempo reale per durata e frequenza dei frame e uso della GPU. Inoltre, raccogliendo e analizzando dati dettagliati sull'utilizzo della GPU, questo strumento fornisce informazioni dettagliate sul tempo di esecuzione della CPU e della GPU dei singoli eventi DirectX e pertanto può essere utile per determinare se la CPU o la GPU è il collo di bottiglia delle prestazioni.

Abilitazione del debug di un progetto di test gestito di Visual C++

Novità di questa versione: per abilitare il debug di un progetto di test gestito di Visual C++, passare a "Strumenti | Opzioni | Debug | Riquadro Generale e selezionare l'opzione "Elimina l'ottimizzazione JIT al caricamento del modulo (solo gestito)".

C# e Visual Basic

Funzionalità del linguaggio

In questa versione, diverse nuove funzionalità del linguaggio C# e Visual Basic consentono di ridurre boilerplate e confusione nel codice quotidiano, incoraggiare uno stile più dichiarativo di programmazione e avvicinare ancora di più i due linguaggi. Ad esempio, sono stati apportati miglioramenti sintattici alle dichiarazioni di tipo e membro e al controllo null. Inoltre, le variabili locali possono essere dichiarate all'interno di espressioni e await possono essere usate nei blocchi catch e finally. Molte di queste funzionalità vengono implementate solo per una delle due lingue nelle versioni precedenti, ma saranno disponibili per entrambe le lingue nella versione finale.

  • Nameof fornisce un modo sicuro per il refactoring di ottenere il nome di, ad esempio un parametro, un membro o un tipo come stringa.
  • Usando gli operatori condizionali Null, è possibile ottenere un controllo Null predefinito durante l'accesso e la chiamata di membri e indicizzatori.
  • Interpolazione di stringhe: l'interpolazione di stringhe offre un modo conciso di descrivere i modelli di stringa che inseriscono espressioni in stringhe di formato (C# solo in anteprima, sia VB che C# in RTM).
  • I metodi, le proprietà getter-only e così via, ora possono avere una singola espressione come corpo, proprio come le espressioni lambda.
  • Le proprietà automatiche possono avere inizializzatori e non richiedono più setter.
  • Inizializzatori di indice: all'interno di un inizializzatore di oggetto è ora possibile inizializzare un indice specifico del nuovo oggetto. Solo C#.
  • I filtri delle eccezioni consentono di esaminare un'eccezione e decidere se intercettarlo con un determinato blocco catch.
  • L'uso di clausole per le classi statiche inserisce direttamente i membri statici nell'ambito, quindi è possibile chiamare ad esempio WriteLine() o Sqrt() senza anteporre il nome della classe.
  • Await ora funziona in blocchi catch e finally, obviating some very tricky workarounds.

Interfaccia utente e modifica dell'editor di codice

L'interfaccia utente dell'editor di codice e le esperienze di modifica per C# e Visual Basic sono state sostituite con nuove esperienze basate sulla piattaforma del compilatore .NET ("Roslyn"). Molte delle caratteristiche che ami oggi sono state migliorate o rinnovate.

  • Le lampadine sono la nuova home page per tutte le azioni rapide eseguite in Visual Studio Editor, incluse le correzioni ai problemi di codice comuni e il refactoring del codice. Quando si verificano problemi nel codice, una lampadina mostra le correzioni suggerite per tali problemi. Tutte le operazioni di refactoring sono state spostate nella lampadina. È possibile accedere alla lampadina in qualsiasi momento digitando CTRL+ <punto>.

Light bulb shows suggestions

  • Sono disponibili due nuove operazioni di refactoring principali: variabile temporanea inline e Introduzione locale. Ecco un esempio della nuova funzionalità Introduzione locale :

Introduce local light bulb

Un esempio di variabile temporanea Inline:

Inline temporary light bulb

  • Il supporto per il refactoring per Visual Basic è stato aggiunto per la prima volta ed è stato spostato anche nella lampadina.
  • Anche la ridenominazione è stata migliorata; ora evidenzia tutte le istanze dell'identificatore che si desidera rinominare, consentendo di digitare il nuovo nome in tutte le istanze contemporaneamente direttamente nell'editor.

Improvements to inline renaming

  • È possibile ottenere l'analisi del codice live e le correzioni automatiche durante la digitazione, con linee guida specifiche per le piattaforme Microsoft e i pacchetti NuGet di destinazione. In Anteprima è necessario aggiungere gli analizzatori FxCop live tramite un pacchetto NuGet ottenuto dalla raccolta NuGet, come qualsiasi altro pacchetto. Quando esegui il pull di una determinata regola live, sposta la regola FxCop post-compilazione equivalente, in modo da non ottenere riscontri duplicati. Di seguito è riportato un esempio del pacchetto Di analisi del codice per Azure .

An example from the Code Analysis for Azure package

  • L'analizzatore di espressioni per C# e Visual Basic è stato riscritto. I miglioramenti includono il supporto per le espressioni LINQ e lambda nelle finestre Espressioni di controllo e controllo immediato.

F#

Funzionalità del linguaggio e del runtime

F# 4.0 contiene numerose nuove aggiunte di linguaggio e runtime che riempiono le lacune, rendono più semplici operazioni e migliorano le prestazioni nelle aree chiave. Numerosi bug e piccole ottimizzazioni delle prestazioni sono stati implementati anche nel compilatore e nel runtime.

  • Costruttori come funzioni di prima classe: i nomi di classe possono ora essere usati come valori di funzione di prima classe, che rappresentano i costruttori per tale classe.
  • Unificazione di 'modificabile' e 'ref' : la sintassi 'modificabile' può ora essere usata ovunque e i valori acquisiti verranno convertiti automaticamente in valori 'ref' basati su heap dal compilatore quando necessario. È stato aggiunto un nuovo avviso facoltativo nel caso in cui uno sviluppatore desideri ricevere una notifica quando si verifica questo problema.
  • Parametri statici per i metodi forniti: i singoli metodi forniti dai provider di tipi ora possono specificare parametri statici.
  • Tipi forniti non nullable: i tipi forniti possono ora essere specificati come non nullable tramite lo standard [<AllowNullLiteral(false)>].
  • Virgolette implicite di argomenti del metodo: gli argomenti del metodo di tipo Expr< non> possono ora essere racchiusi in modo trasparente tra virgolette automaticamente, passando sia il valore dell'argomento che l'AST dell'espressione che l'ha generata.
  • Grammatica preprocessore estesa - Operatori booleani ||, && e ! può ora essere usato, insieme al raggruppamento ( ) , in #if direttive del preprocessore.
  • Esponenti razionali in unità di misura - le unità di misura ora supportano esponenti razionali, che talvolta vengono usati nelle scienze fisiche come l'ingegneria elettrica
  • Uso semplificato delle unità di misura con funzioni di tipo 'printf': i valori numerici unitizzati ora funzionano perfettamente con gli identificatori di formato printf numerici, senza richiedere la rimozione delle unità.
  • Supporto per matrici .NET ad alta dimensione: è ora possibile usare matrici .NET di rango 5 o superiore dal codice F#.
  • Proprietà di estensione negli inizializzatori di oggetti: le proprietà dell'estensione impostabili possono ora essere assegnate nelle espressioni dell'inizializzatore di oggetti.
  • Ereditarietà da più istanze di interfacce generiche: è ora possibile ereditare da classi che implementano più istanze dell'interfaccia generica.
  • Più proprietà in 'StructuredFormatDisplayAttribute' - %A formattazione specificata tramite [<StructuredFormatDisplay>] può ora includere più proprietà.
  • Spazio dei nomi "Microsoft" iniziale facoltativo : quando si usano o si aprono moduli e spazi dei nomi da FSharp.Core, il "Microsoft" iniziale è ora facoltativo.

F# Runtime

  • Normalizzazione dei moduli Array, List e Seq: il set di funzioni di elaborazione della raccolta è ora coerente nei moduli Array, List e Seq (a barre delle API non applicabili a determinati tipi), con implementazioni dedicate e ottimizzate per ogni tipo.
  • Hash strutturale ottimizzato: sono state apportate ottimizzazioni significative per migliorare le prestazioni del confronto hash generico per i tipi primitivi, con conseguente miglioramento delle prestazioni da parte delle API, ad esempio 'distinct' e 'groupBy'.
  • Operatori di confronto non strutturali ottimizzati: è ora possibile aprire il modulo FSharp.Core.Operators.NonStructuralComparison, sostituendo gli operatori di confronto strutturale F# predefiniti con operatori non strutturali più efficienti. Ciò può offrire miglioramenti significativi delle prestazioni durante l'elaborazione dei tipi con implementazioni di operatori personalizzate, in particolare i tipi valore.
  • Sintassi di sezionamento in elenchi F#: gli elenchi F# supportano ora la sintassi di sezionamento per ottenere sotto liste.
  • Sono ora disponibili estensioni asincrone a System.Net.WebClient' - Estensioni WebClient AsyncDownloadFile e AsyncDownloadData.
  • Analisi dello stack asincrone migliori: le eccezioni che si verificano nei calcoli asincroni F# ora contengono più analisi dello stack descrittive, semplificando la diagnosi dei problemi.
  • API di interoperabilità per Option : sono state aggiunte varie nuove API al modulo Option per la conversione da e verso oggetti Null e valori System.Nullable.
  • Modello attivo tra virgolette per i valori System.Decimal: un modello attivo è ora integrato per la corrispondenza dei valori letterali costanti System.Decimal tra virgolette.

Funzionalità dell'IDE F#

Sono disponibili nuove esperienze e funzionalità anche negli strumenti Visual F#, insieme a una serie di correzioni di bug.

  • Debug di script: è ora possibile eseguire il debug degli script F# direttamente nel debugger di Visual Studio.
  • Metadati dell'assembly nei modelli di progetto: tutti i modelli di progetto F# ora contengono un file AssemblyInfo.fs che contiene attributi di metadati comuni a livello di assembly.
  • Controllo aggiornato integrato: i progetti F# ora segnalano correttamente lo stato "aggiornato" durante la compilazione in Visual Studio.
  • Completamento di IntelliSense negli inizializzatori di oggetti: le espressioni dell'inizializzatore di oggetti supportano ora il completamento intelliSense delle proprietà impostabili, usandoCTRL+SPAZIO.
  • Completamento di IntelliSense per i parametri denominati : le chiamate al metodo e al costruttore supportano ora il completamento automatico di IntelliSense dei parametri denominati, usandoCTRL+SPAZIO.
  • Correzioni di bug relative al supporto delle cartelle: gli strumenti Visual F# non supportano direttamente le cartelle nei progetti, ma sono stati corretti diversi bug di sistema del progetto per migliorare il supporto delle cartelle aggiunto dall'estensione Visual F# Power Tools.

.NET Framework 4.6

La versione più recente di .NET Framework è la 4.6. Offre numerosi miglioramenti nelle tecnologie di sviluppo di applicazioni, ad esempio ASP.NET, Windows Communication Foundation e Windows Presentation Foundation. Sono state apportate modifiche alla rete, alla libreria di classi di base di .NET Framework e a Common Language Runtime (incluso un nuovo compilatore JIT a 64 bit, la compilazione del codice nativo per le app piattaforma UWP (Universal Windows Platform), i miglioramenti del caricatore di assembly).

Solo un campionamento delle modifiche includono:

  • ASP.NET metodi di associazione di modelli ora restituiscono attività.
  • ADO.NET supporta ora la funzionalità Always Encrypted disponibile in SQL Server 2016 Community Technology Preview 2 (CTP2).
  • Windows Presentation Foundation (WPF) offre un supporto migliore per il tocco e il miglioramento del layout HDPI.
  • Windows Communication Foundation (WCF) supporta ora SSL versione TLS 1.1 e TLS 1.2, oltre a SSL 3.0 e TLS 1.0.
  • La libreria di classi di base di .NET Framework include miglioramenti alla Garbage Collection, al modello asincrono basato su attività e alla crittografia. Aggiunge anche tipi di vettore abilitati per SIMD, nonché il supporto per i commutatori di compatibilità che consentono agli sviluppatori di fornire un meccanismo di rifiuto esplicito uniforme per le funzionalità supportate da una nuova vesion delle rispettive librerie.

Per altri dettagli e un elenco completo delle nuove funzionalità aggiunte a .NET Framework, vedere Novità di .NET Framework.

Entity Framework

Questa versione include una versione di anteprima di Entity Framework 7 e un aggiornamento di Entity Framework 6 che include principalmente correzioni di bug e contributi della community.

Entity Framework 7

La nuova versione di Entity Framework abilita nuove piattaforme e nuovi archivi dati. Windows Telefono, Windows Store, ASP.NET 5 e l'applicazione desktop tradizionale ora possono usare Entity Framework. Questa versione del framework supporta i database relazionali e gli archivi dati non relazionali, ad esempio Tabelle di Azure Archiviazione e Redis. Include un'anteprima anticipata del runtime di EF7 installato nei nuovi progetti ASP.NET 5. Per altre informazioni su EF7, vedere Informazioni su EF7.

Entity Framework 6.x

Questa versione include la versione di Entity Framework 6.1.3 del runtime e degli strumenti. Entity Framework 6.1.3 include correzioni di bug e contributi della community; è possibile visualizzare un elenco delle modifiche incluse in Entity Framework 6.1.3.

Il runtime di Entity Framework 6.1.1 è incluso in diverse posizioni in questa versione.

  • Il runtime verrà installato se si crea un nuovo modello usando Entity Framework Tools in un progetto in cui non è già installato il runtime di Entity Framework.
  • Il runtime è preinstallato nei nuovi progetti di ASP.NET, a seconda del modello di progetto selezionato.

IDE di Visual Studio

Account condivisi

Novità di questa versione, è possibile condividere gli account utente aggiunti in Visual Studio con altre app, ad esempio con Blend per Visual Studio o con Microsoft Test Manager (e viceversa).

Progetti condivisi

In questa versione sono disponibili nuovi modelli per creare progetti condivisi vuoti per Visual Basic, C# e JavaScript. Questi progetti condivisi possono ora essere referenziati da diversi tipi di progetto:

  • Qualsiasi progetto VB/C# non definito (ad esempio, app console, librerie di classi, app per moduli Win)
  • Windows Store 8.1 e Windows Telefono 8.1 (VB/C#/JavaScript)
  • Windows Telefono Silverlight 8.0/8.1 (VB/C#)
  • WPF e PCL

È possibile aggiungere/rimuovere riferimenti a progetti condivisi tramite Gestione riferimenti nella scheda Progetti condivisi. Il riferimento al progetto condiviso viene visualizzato sotto il nodo Riferimenti nella Esplora soluzioni, ma il codice e gli asset nel progetto condiviso vengono considerati come file collegati al progetto principale.

Editor di codice (tutti i linguaggi)

La ricerca nei file è stata migliorata consentendo l'aggiunta dei risultati successivi ai risultati precedenti. I risultati accumulati possono essere eliminati.

Il supporto tocco è ora disponibile nell'editor di Visual Studio per i movimenti seguenti:

  • Scorrimento (tocco e trascinamento nell'area dell'editor sulle barre di scorrimento regolari e avanzate)
  • Avvicinamento delle dita allo zoom
  • Selezionare un'intera riga toccando il margine dell'editor e selezionando le parole toccandole due volte
  • Richiamare il menu di scelta rapida dell'editor premendo e tenendo premuto

Siamo consapevoli di un problema con il tocco, in quanto il movimento a doppio tocco non è sempre affidabile a livelli di zoom inferiori. Vorremmo ricevere commenti e suggerimenti sul nuovo supporto tocco e in particolare su eventuali problemi che potresti trovare.

XAML Designer

I clienti di Visual Studio potranno ora modificare i modelli e gli stili archiviati nei dizionari risorse esterni nel contesto dell'utilizzo. Questa esperienza è stata ulteriormente perfezionata per usare Peek per abilitare una vera modifica delle risorse in situ nella finestra di progettazione XAML.

Layout finestra personalizzati

È ora possibile salvare layout di finestra personalizzati facendo clic su Salva layout finestra dal menu Finestra e applicare un layout personalizzato facendo clic su Applica layout finestra dal menu Finestra . È anche possibile applicare un layout usando i tasti di scelta rapida pre-assegnati. I primi nove layout hanno anche tasti di scelta rapida da CTRL + ALT + 1 a CTRL+ALT+9. Altre attività che è possibile eseguire includono l'eliminazione, la ridenominazione e il riordinamento dei layout facendo clic su Gestisci layout finestra dal menu Finestra.

Icone ad alta risoluzione

Visual Studio supporta icone ad alta risoluzione nelle barre dei comandi, barre degli strumenti della finestra degli strumenti (standard), menu principali, elenco di errori, barra di stato e alcuni tipi di progetto Esplora soluzioni quando il dispositivo è in esecuzione con un ridimensionamento DPI superiore al 100%.

Miglioramenti dell'interfaccia utente

  • I menu vengono ora visualizzati nello stile Titolo maiuscole e minuscole invece dello stile ALL C piattaforma di strumenti analitici.
  • I valori dell'elenco a discesa Configurazione e piattaforma per la finestra di dialogo Pagina delle proprietà di Visual C++ sono stati modificati per ricordare l'ultima selezione dell'utente quando la pagina delle proprietà viene chiusa e riaperta.

Commenti e suggerimenti su Visual Studio

È stata migliorata l'esperienza Send a Frown con strumenti migliori per segnalare lentezza, blocchi e arresti anomali. È ora possibile allegare file o contrassegnare i commenti e suggerimenti per descrivere meglio il problema. Inoltre, abbiamo aggiornato le icone dei commenti e le voci di menu per migliorare l'individuabilità.

Estendibilità in Visual Studio

  • È ora possibile usare icone ad alta risoluzione nelle estensioni di Visual Studio.
  • I componenti aggiuntivi non sono più supportati in questa versione. Sono stati rimossi i modelli di progetto dei componenti aggiuntivi di Visual Studio e il componente aggiuntivo Manager. È consigliabile convertire i componenti aggiuntivi in estensioni VSPackage. Per altre informazioni, vedere domande frequenti: Conversione di componenti aggiuntivi in estensioni VSPackage.
  • È ora possibile aprire un progetto di estendibilità anche se Visual Studio SDK non è installato.
  • Inoltre, è possibile installare Visual Studio SDK usando il programma di installazione di Visual Studio; non è più necessario andare a un sito Web. A tale scopo, scegliere Modifica dal menu Aggiungi applicazioni, fare clic con il pulsante destro del mouse su Visual Studio 2015 e quindi scegliere Modifica. Nella finestra di dialogo Di configurazione di Visual Studio selezionare Strumenti di estendibilità di Visual Studio in Strumenti comuni.
  • Per aumentare la portabilità e la condivisione dei progetti di estensione, è possibile usare le versioni NuGet degli assembly di riferimento di Visual Studio SDK. Per altre informazioni, vedere Assembly pubblicati da Visual Studio Extensibility.

Altre informazioni sull'estendibilità di Visual Studio.

Miscela

Abbiamo riprogettato Blend per Visual Studio 2015 per offrire un'esperienza di sviluppo migliorata dell'interfaccia utente per la creazione di app XAML accattivanti. Blend offre un nuovo aspetto elegante coerente con Visual Studio, il supporto per La soluzione e Team Explorer e un'esperienza di ricaricamento dei file arricchita per facilitare un flusso di lavoro migliore tra Blend e Visual Studio. Abbiamo anche fornito le funzionalità più desiderate di Blend per aiutarti a essere più produttivo:

  • È ora possibile scrivere XAML in modo più efficiente usando XAML IntelliSense che fornisce il completamento dell'istruzione e lo spostamento all'origine.
  • Puoi anche visualizzare e modificare controlli e risorse XAML all'interno del contesto in cui vengono usati con la definizione di visualizzazione XAML.
  • Trovare e risolvere i problemi dell'interfaccia utente nell'app in esecuzione è ora più semplice usando gli strumenti dell'interfaccia utente per il debug XAML che consentono di esaminare la struttura ad albero visuale attiva e le proprietà di qualsiasi elemento nell'albero.
  • Con il supporto NuGet aggiunto, è possibile gestire i pacchetti NuGet in Blend.
  • Abbiamo anche sostituito la funzionalità Area di lavoro animazioni con la funzionalità Layout sincronizzati più potente che puoi usare per creare molti layout di finestra diversi ed eseguirne il roaming tra i computer.
  • Per gli utenti esperti che preferirebbero usare la tastiera anziché il mouse, abbiamo reso completamente accessibili i riquadri della finestra di progettazione blend.
  • Infine, come parte dello sforzo continuo di Microsoft per la creazione di software accessibile universalmente, Blend è ora un lettore a schermo intero e accessibile a contrasto elevato.

Per altre informazioni sulle nuove funzionalità aggiunte a Blend, visitare il post di blog anteprima .

Debug e diagnostica

Modifica gestita e continuazione al collegamento

A partire da RC, è possibile modificare e continuare quando ci si connette alle applicazioni .NET e quando la variabile di ambiente

complus_forceenc è impostato su 1 nel processo di destinazione.

Configurazione del punto di interruzione

La nuova finestra Impostazioni punto di interruzione consente di specificare condizioni e azioni per i punti di interruzione. La finestra include il supporto migliorato di IntelliSense per le condizioni e le azioni dei punti di interruzione. È possibile usare annulla (CTRL+Z) per ripristinare i punti di interruzione eliminati.

Espressioni lambda in Windows debugger

È ora possibile usare espressioni lambda nelle finestre Espressione di controllo, Controllo immediato e altre finestre del debugger in C# e Visual Basic.

PerfTips

È possibile usare la funzionalità Perf Suggerimenti per vedere quanto tempo è necessario eseguire il codice direttamente nell'editor quando si impostano i punti di interruzione e si esegue il passaggio con il debugger.

Utilizzo GPU

È possibile usare lo strumento Utilizzo GPU per comprendere l'utilizzo della GPU delle applicazioni DirectX. I grafici Intervallo di tempo, Frequenza fotogrammi e Utilizzo GPU sono disponibili quando le applicazioni vengono eseguite in tempo reale. Inoltre, raccogliendo e analizzando dati dettagliati sull'utilizzo della GPU, questo strumento può fornire informazioni dettagliate sul tempo di esecuzione della CPU e della GPU di ogni singolo evento DirectX e quindi può essere utile per determinare se la CPU o la GPU è il collo di bottiglia delle prestazioni.

Miglioramenti nel debugger C++

Quando il debugger C++ viene arrestato in corrispondenza dei punti di interruzione, può eseguire il codice per calcolare i risultati, ad esempio per visualizzare i dati nelle finestre Espressioni di controllo e Controllo immediato. Se il debugger rileva che una funzione chiamata è deadlock, tenterà di risolvere il problema.

Quando un debugger C++ avvia un processo, Windows alloca ora la memoria usando l'heap normale anziché l'heap normale di debug. In questo modo si avrà un avvio del debug più veloce.

Strumenti di debug dell'interfaccia utente per XAML

Sono stati aggiunti due nuovi strumenti, La struttura ad albero visuale attiva e Esplora proprietà attive che controlla la struttura ad albero visuale dell'applicazione WPF in esecuzione, nonché le proprietà di qualsiasi elemento dell'albero. Questi strumenti consentono di selezionare qualsiasi elemento nell'app in esecuzione e visualizzare le proprietà finali, calcolate e sottoposte a rendering. Gli strumenti includono anche quanto segue:

  • Struttura ad albero visuale attiva. È ora possibile visualizzare la struttura ad albero visuale completa di un'applicazione in esecuzione durante una sessione di debug. La struttura ad albero visuale attiva è disponibile quando si preme F5 in Visual Studio o si collega a un'applicazione in esecuzione. È possibile usare la struttura ad albero visuale attiva per selezionare gli elementi in un'applicazione in esecuzione per l'ispezione in Esplora proprietà attive. Viene visualizzato il numero discendente e, se le informazioni di origine sono disponibili, è possibile trovare immediatamente il file e il percorso della definizione dell'elemento.
  • Esplora proprietà attive. Usare questo nuovo strumento per controllare le proprietà impostate su qualsiasi elemento di un'applicazione in esecuzione, raggruppate in base all'ambito impostato. È possibile modificare queste proprietà durante una sessione di debug e visualizzare immediatamente le modifiche nell'applicazione in esecuzione.

Scegliere tra di loro il modo in cui le proprietà sostituiscono l'un l'altra e capire il comportamento vincente può rivelarsi difficile in fase di progettazione. Ora, usando i nuovi strumenti di debug dell'interfaccia utente per XAML, puoi eseguire queste ispezioni in fase di esecuzione.

Il supporto per le app di Windows Store verrà rilasciato in un aggiornamento futuro.

UI Debugging Tools for XAML, full screen

Impostazioni eccezioni

È possibile configurare le impostazioni delle eccezioni del debugger usando la finestra degli strumenti Exception Impostazioni. La nuova finestra non è modale e include funzionalità migliorate di prestazioni, ricerca e filtro.

Exceptions Settings - Break when Thrown window

Strumento sequenza temporale

Il nuovo strumento Sequenza temporale offre una visualizzazione incentrata sullo scenario delle risorse utilizzate dalle applicazioni che è possibile usare per esaminare, diagnosticare e migliorare le prestazioni delle applicazioni WPF e Windows Store 8.1.

Lo strumento Sequenza temporale che si trova nell'hub Prestazioni e diagnostica mostra quanto tempo l'applicazione impiega per preparare i frame dell'interfaccia utente e nelle reti di manutenzione e richieste di disco. Lo strumento esegue questa operazione nel contesto degli scenari, ad esempio Caricamento applicazioni e Caricamento pagine.

The new Timeline tool

Strumenti di diagnostica

È stata aggiunta una nuova finestra Strumenti di diagnostica visualizzata all'avvio del debug (premere F5). La finestra Strumenti di diagnostica contiene le funzionalità seguenti:

  • Eventi (con IntelliTrace)
    Gli eventi (con IntelliTrace) consentono di accedere a tutti gli eventi Di interruzione, Output e IntelliTrace del debugger raccolti durante la sessione di debug. I dati vengono presentati sia come sequenza temporale che come visualizzazione tabulare. Le due visualizzazioni vengono sincronizzate e possono interagire tra loro.
  • Utilizzo memoria
    Lo strumento Utilizzo memoria consente di monitorare l'utilizzo della memoria dell'app durante il debug. È anche possibile acquisire e confrontare snapshot dettagliati della memoria nativa e gestita per analizzare la causa della crescita della memoria e delle perdite di memoria.
  • Uso di CPU
    Lo strumento Utilizzo CPU consente di monitorare l'utilizzo della CPU dell'applicazione durante il debug.
    Questo strumento sostituisce l'intervallo di tempo cpu PerfTip disponibile nella versione di anteprima di Visual Studio 2015.

Nelle versioni precedenti la finestra Strumenti di diagnostica supporta i tipi di progetto e le configurazioni di debug seguenti:

  • Progetti WPF, WinForms e Console gestiti
  • Progetti Win32 nativi, console e MFC
  • ASP.NET 4 usando solo IIS Express
  • Progetti windows Store gestiti o nativi in esecuzione in locale
    (i progetti di Windows Store che usano JavaScript o sono in esecuzione in un telefono non sono supportati)

La finestra Strumenti di diagnostica nella versione RC presenta i miglioramenti seguenti:

  • Può essere spostato in qualsiasi posizione della finestra all'interno di Visual Studio e memorizza la posizione e le dimensioni tra le sessioni di debug
  • Vengono visualizzati e visualizzati i dati per un singolo processo durante il collegamento a un processo usando Debug -> Collega a processo
  • Viene visualizzato durante il debug di progetti ASP.NET in esecuzione in IIS
  • Viene visualizzato durante il debug di ASP.NET 5 progetti
  • Viene visualizzato durante il debug di un'app in esecuzione in un dispositivo desktop windows remoto
  • Gli snapshot di memoria possono essere visualizzati dopo l'arresto del debug
  • Gli eventi del debugger (solo eventi di interruzione) sono disponibili durante il debug di progetti nativi

Sono state aggiunte anche le nuove funzionalità seguenti per la versione RC:

Solo il mio codice. Quando si preme F5 per avviare il debugger, verrà visualizzato solo il codice in modo da poter comprendere i problemi di prestazioni e le eccezioni senza rumore dal framework e da altro codice. Poiché questa nuova funzionalità di filtro del codice in IntelliTrace elimina il codice di sistema ed espone solo il codice utente, semplifica il debug di "just my code".

Strumento di diagnostica di rete. Questo nuovo strumento di diagnostica di rete consente di diagnosticare i problemi relativi alla rete durante la compilazione di app di Windows Store e le app universali eseguite in tutti i dispositivi Windows 10, da Windows Telefono a Xbox e Windows Store.

Lo strumento di diagnostica di rete registra informazioni sulle operazioni di rete HTTP dell'app, tra cui intestazioni di richiesta e risposta HTTP, payload di richiesta e risposta, cookie e informazioni dettagliate sulla tempistica e altro ancora. Lo strumento di diagnostica di rete può anche aiutare a rispondere a domande su scenari comuni, ad esempio:

  • Problemi correlati all'autenticazione (ad esempio, perché non è possibile accedere a una risorsa)
  • Problemi correlati alla cache (ad esempio, perché non si ottiene la versione più recente di una risorsa)
  • Quanti byte vengono scaricati durante l'esecuzione di attività comuni delle app
  • Dove sono i colli di bottiglia durante l'accesso e il download di una risorsa

Per accedere allo strumento Di rete, aprire la finestra Strumenti di diagnostica in Visual Studio 2015. Scegliere Avvia strumenti di diagnostica senza eseguire debug dal menu Debug. In alternativa, premere ALT+F2.

Sono stati apportati i miglioramenti seguenti alla finestra Strumenti di diagnostica visualizzata durante il debug:

  • Gli eventi dell'app vengono ora visualizzati in una singola traccia Degli eventi IntelliTrace invece di suddividere tra le tracce Eventi IntelliTrace ed Eventi di output.
  • Gli eventi dell'app vengono ora visualizzati mentre il programma è in esecuzione; ora non è più necessario premere "Interrompi tutto" per visualizzare gli eventi.
  • È ora possibile attivare debug cronologico per i punti di traccia impostati nel codice, consentendo di visualizzare il codice sorgente e lo stack di chiamate.
  • È ora possibile visualizzare gli eventi di Garbage Collection e Snapshot nel grafico Utilizzo memoria in modo che sia possibile visualizzare quando si sono verificate operazioni di Garbage Collection gestite e quando sono stati creati snapshot con lo strumento Utilizzo memoria.

ASP.NET

ASP.NET 4.6

ASP.NET'associazione di modelli supporta i metodi di restituzione delle attività

ASP.NET metodi di associazione di modelli precedentemente restituiti da Task non erano supportati e generavano un'eccezione in fase di esecuzione, se configurati. Se le applicazioni vengono distribuite con tali metodi, questi metodi vengono ora eseguiti correttamente. Questa modifica si applica solo alle applicazioni destinate specificamente a .NET 4.6 o versioni successive.

Abilitazione della piattaforma del compilatore .NET ("Roslyn") nelle applicazioni ASP.NET

È possibile usare le nuove funzionalità del linguaggio C# e VB in qualsiasi progetto ASP.NET 4.6. I modelli Web Form in VS 2015 includono il pacchetto Microsoft.CodeDom.Providers.DotNetCompilerPlatform preinstallato.

Aggiunta del supporto per HTTP/2

In Windows 10 e .NET Framework 4.6 è stato aggiunto il supporto per HTTP/2. L'obiettivo principale per HTTP/2 è migliorare le prestazioni, la latenza e l'utilizzo della rete usando una singola connessione dai browser a un sito Web.

Framework e controlli aggiornati per supportare Entity Framework 6

Dynamic Data Framework, Entity Data Source Control e provider universali sono stati aggiornati in modo che funzionino con Entity Framework 6.

Aggiornamenti di autenticazione

I modelli ASP.NET 4.6 ora usano open id Connessione middleware per l'autenticazione con Azure AD. In questo modo il modello di programmazione per l'autenticazione con Azure AD risulta molto più semplice.

Se si seleziona l'opzione "Account utente individuali", i modelli di ASP.NET 4.6 mostrano come usare l'autenticazione a due fattori e gli account di accesso di social networking usando ASP.NET Identity.

ASP.NET MVC 5.2.3, Pagine Web 3.2.3 e API Web 5.2.3

Sono stati aggiornati i pacchetti modello per usare i pacchetti di runtime più recenti per MVC 5.2, Pagine Web 3.2 e API Web 2.2. Per informazioni dettagliate su questi aggiornamenti dei pacchetti, vedere il post di blog ASP.NET MVC 5.2.3, Pagine Web 3.2.3 e API Web 5.2.3 Release .

API Web ASP.NET OData 5.3.1

È stato aggiornato lo scaffolder OData dell'API Web per usare ASP.NET Web OData 5.3.1. Per altre informazioni, vedere Novità di API Web ASP.NET OData 5.3.

SignalR 2.1.2

Sono stati aggiornati i pacchetti di modelli per l'uso di SignalR 2.1.2. Vedere la nota sulla versione di SignalR in GitHub.

Pacchetto Microsoft Owin 3.0

Sono stati aggiornati i pacchetti modello per l'uso dei pacchetti NuGet di Microsoft Owin 3.0. Vedere il progetto Katana.

ASP.NET Identity 2.2.1

ASP.NET Identity 2.2.1 include molte correzioni di bug e miglioramenti delle prestazioni rispetto alla versione 2.1. Per altri dettagli, leggere questo post di blog ASP.NET Identity 2.2.1 .

Aggiornamenti strumenti ASP.NET

Miglioramenti dell'editor JSON

Sono stati apportati alcuni miglioramenti nell'editor JSON, tra cui miglioramenti delle prestazioni, ad esempio il caricamento asincrono dello schema JSON, la memorizzazione nella cache degli schemi figlio e il supporto di IntelliSense migliore. Sono inoltre disponibili le nuove funzionalità seguenti:

  • Convalida dello schema JSON. Aggiungere la funzionalità di convalida dello schema JSON, in base allo schema definito nell'elenco a discesa dello schema.
  • Un-minify context menu. È possibile fare clic con il pulsante destro del mouse sull'editor JSON e scegliere Un-minify context menu to un-minify any long arrays in the JSON file .You can right-click the JSON editor and select Un-minify context menu to un-minify any long arrays in the JSON file.
  • Ricaricare il menu di scelta rapida Schemi. Visual Studio memorizza nella cache lo schema scaricato da Internet e userà la cache anche dopo il riavvio di Visual Studio. Se lo schema viene modificato, è possibile usare il menu di scelta rapida Ricarica schemi CTRL+MAIUSC+J per scaricare nuovamente lo schema usato corrente nel documento JSON attivo e quindi usarlo immediatamente nel documento corrente.
  • IntelliSense per package.json/bower.json. Oltre a provare IntelliSense e la convalida sia per i file package.json che bower.json, Visual Studio fornisce anche IntelliSense live per i pacchetti Bower e npm direttamente all'interno dell'editor JSON.
  • Convalida delle proprietà duplicate. L'editor JSON ora fornirà la convalida per tutte le proprietà duplicate. Ciò consente di rilevare un problema comune con la creazione di file JSON.
  • Il supporto sia per IntelliSense che per la convalida dei file JSON è stato notevolmente migliorato supportando completamente la specifica json Schema draft v4. Ora è molto più facile identificare le proprietà necessarie e l'editor consente di ordinare facilmente le proprietà in ordine alfabetico. La formattazione di un file JSON minimizzato verrà ora annullata automaticamente.
  • È stato aggiunto il supporto per SchemaStore.org, una raccolta open source di file di schema JSON utili. Ciò significa che qualsiasi file JSON aperto in Visual Studio con uno schema associato a SchemaStore.org ottiene automaticamente IntelliSense e la convalida.
  • Il supporto per gli autori di schemi JSON è stato ulteriormente migliorato grazie a una migliore convalida della integrità dello schema.

Miglioramenti dell'editor HTML

L'editor HTML ha aggiornato IntelliSense per gli standard Web e ha introdotto le nuove funzionalità seguenti:

  • Migliore formattazione del modello client. L'editor HTML non analizza più o formatta la sintassi a doppio curvo {{...}}. Ciò consente di assicurarsi che il contenuto di tale sintassi non venga trattato html e pertanto invalidato, né tenti di formattare il contenuto, che non può essere eseguito correttamente utilizzando il formattatore HTML. Questa opzione è ideale per Angular, Handlebars, Mustache e altre sintassi di modelli a doppio curvo.
  • Supporto per elementi personalizzati, elementi di polimeri e attributi. L'editor HTML non convalida più gli attributi sconosciuti per gli elementi personalizzati, perché i framework diversi hanno molti tag personalizzati. Gli elementi sconosciuti non saranno più ondulati.
  • IntelliSense di base per i componenti Web. L'editor HTML include IntelliSense per <il collegamento rel="import" /> che fa parte dello standard dei componenti Web.
  • Descrizioni comando degli elementi HTML. Le descrizioni comando vengono fornite per gli elementi HTML nell'editor.
  • #region supporto. L'editor HTML supporta ora la riduzione dell'area. È possibile usare anche il frammento di codice circostante per racchiudere la selezione corrente.
  • Supporto dei commenti Todo/Hack nell'elenco attività.
  • Icone Angular. Entrambe le direttive Angular (ad esempio, <<ng-view>) e attributi (ad esempio ng-controller) ora vengono visualizzati in IntelliSense con un logo Angular per facilitarne l'identificazione.
  • Icone bootstrap. Gli attributi della classe HTML forniti da IntelliSense ora vengono visualizzati con il logo Bootstrap se il nome della classe è stato definito dal file CSS bootstrap.

Miglioramenti apportati all'editor CSS/LESS/Sass

  • Supporto dei commenti Todo/Hack nell'elenco attività.
  • @viewport correzione per l'editor LESS. Nell'editor @viewport LESS non vengono più visualizzati avvisi di verifica.
  • Fornire molti altri frammenti di codice. L'editor CSS/LESS/Sass offre ora più frammenti di codice per semplificare l'esperienza di sviluppo.
  • È ora disponibile un'estensione per Visual Studio 2015 per compilare less, Scss e CoffeeScirpt. Scaricarla qui.

Editor JSX (React.js)

Visual Studio supporta ora la sintassi JSX di tutti i file con estensione jsx. Ottenere sia IntelliSense che la formattazione e la convalida nell'editor durante la digitazione. Questo editor è stato creato in collaborazione con il team di Facebook responsabile della libreria React.js.

Browser Link

CSS viene sincronizzato automaticamente. Salvando il file CSS o modificandolo esternamente (ad esempio, usando un compilatore LESS/SASS) l'intero file CSS viene ricaricato nel browser. Se il file non è in grado di eseguire la sincronizzazione automatica, CTRL+S provoca un ricaricamento automatico e deve ripristinarlo in uno stato corretto senza dover aggiornare i browser collegati (CTRL + ALT + INVIO). La funzionalità può essere disabilitata nella barra degli strumenti.

Altre informazioni sulle ASP.NET.

ASP.NET 5

ASP.NET 5 è uno stack .NET snella e componibile per la creazione di applicazioni Web moderne per server cloud e locali. Esso comprende le seguenti funzionalità:

  • Nuova pipeline di richiesta leggera
  • Eseguire in IIS o in modalità self-hosted nel proprio processo
  • Basato su un nuovo ambiente di esecuzione .NET (DNX) che può essere eseguito in .NET Framework completo o in .NET Core, un nuovo runtime ottimizzato per il cloud che supporta il controllo delle versioni side-by-side true
  • Esegue multipiattaforma in Windows, Mac e Linux
  • NuGet tutto, anche il runtime stesso
  • Supporta ASP.NET MVC 6: un framework Web unificato per l'interfaccia utente Web e le API Web
  • Configurazione basata sull'ambiente per una transizione senza problemi al cloud
  • Inserimento delle dipendenze multidimensionale
  • Nuovo sistema di progetto di Visual Studio e esperienza di strumenti ad alta produttività
  • Tutte le origini open source su GitHub tramite .NET Foundation

Visual Studio 2015 include i pacchetti di runtime ASP.NET 5 beta5. Questi pacchetti sono ancora in anteprima e non sono consigliati per l'uso nell'ambiente di produzione. È possibile trovare tutti i dettagli sui miglioramenti specifici aggiunti e sui problemi risolti nelle note sulla versione pubblicate su GitHub.

Visual Studio 2015 include un nuovo sistema di progetto e un'esperienza integrata di strumenti per la compilazione di ASP.NET 5 applicazioni e per l'uso di progetti DNX. Alcune delle nuove funzionalità degli strumenti includono:

  • Nuovo sistema di progetto per la creazione di progetti basati su DNX multipiattaforma compilati ed eseguiti in Windows, Mac e Linux.
  • Modelli per la creazione di ASP.NET 5 siti Web e API Web con MVC 6, Identity 3 ed Entity Framework 7.
  • Modelli per la creazione di librerie di classi basate su DNX e applicazioni console
  • Creare e distribuire strumenti da riga di comando multipiattaforma tramite NuGet.
  • Installare e gestire versioni DNX diverse usando .NET Version Manager (DNVM) dal prompt dei comandi per gli sviluppatori.
  • Esperienza integrata per trovare, installare e ripristinare pacchetti NuGet.
  • Usare CTRL+ . per trovare e installare pacchetti NuGet per simboli non risolti nel codice C#.
  • Strumenti integrati per lo sviluppo Web sul lato client con NPM, Grunt/Gulp e Bower, tra cui l'integrazione della gestione dei pacchetti e il nuovo Strumento di esplorazione attività.
  • Eseguire comandi DNX a livello di progetto direttamente da Visual Studio usando il menu a discesa Esegui pulsante.
  • Creare profili di avvio personalizzati che avviano IIS Express, inclusa l'impostazione delle variabili di ambiente personalizzate.
  • Compilare pacchetti NuGet da un singolo progetto destinati a più framework, tra cui .NET Core.
  • IntelliSense combinato durante la compilazione per più framework di destinazione da un singolo progetto.
  • Nuove funzionalità Razor introdotte da ASP.NET 5, ad esempio gli helper tag, ora si illuminano sia in IntelliSense che nell'evidenziazione della sintassi.

Nuove funzionalità in questa versione

  • Quando si apre un progetto che richiede una versione di DNX non disponibile in Visual Studio, verrà richiesto di installare la versione DNX richiesta.
  • È ora possibile aggiungere riferimenti per perdere assembly usando la finestra di dialogo Aggiungi riferimento.
  • Il modello applicazione Web ASP.NET 5 supporta ora l'opzione Account aziendali e dell'istituto di istruzione per l'autenticazione.
  • L'opzione Host in Cloud nella finestra di dialogo Nuovo progetto ASP.NET è ora disponibile per ASP.NET 5 progetti.
  • Usare Esplora server per modificare in remoto i file in approot per ASP.NET 5 progetti ospitati in Azure.

Per altri dettagli, vedere le note sulla versione degli strumenti in GitHub e il blog sugli strumenti e sviluppo Web .NET.

Strumenti di Azure

Integrazione di Selezione account

La selezione account viene usata in tutte le finestre di dialogo pubblicazione Web e creazione/selezione di app Web per abilitare l'accesso con un clic a più account. È possibile accedere una sola volta a più account e avere accesso rapido e semplice per selezionare singoli account durante la pubblicazione delle risorse.

App per le API

Il modello di anteprima delle app per le API, il supporto per la pubblicazione e la visibilità di Esplora server sono stati migrati a Visual Studio 2015. È ora possibile creare e distribuire app per le API di Azure usando la versione più recente di Visual Studio. Sono state inoltre migliorate le funzionalità di output di Swagger in modo che gli sviluppatori di app per le API abbiano un supporto predefinito migliore per Swagger generato dinamicamente da API Web ASP.NET.

Strumenti per processi Web

È ora possibile controllare i processi Web nel nodo Processo Web di Esplora server all'interno di un sito Web di Azure nei modi seguenti:

  • Nodi di Processi Web sotto i nodi del sito Web in Esplora server.
  • Avviare/arrestare processi Web continui da Esplora server.
  • Eseguire processi su richiesta o pianificati da Esplora server.
  • Visualizzare il dashboard del processo Web da Esplora server.
  • Menu di scelta rapida Visualizza dashboard; usarlo per passare al dashboard del processo Web di Azure.

SDK di Processi Web

I modelli di progetto processo Web di Azure includono WebJobs SDK preinstallato.

NuGet

NuGet 2.8.3

È stato aggiunto il supporto per il progetto DevProject e BizTalkProject 2.8.3. Per informazioni dettagliate, vedere Note sulla versione di NuGet 2.8.3.

Gestione pacchetti NuGet

È stata aggiornata l'interfaccia utente di Gestione pacchetti NuGet per semplificare la gestione dei pacchetti in un'intera soluzione in Visual Studio 2015. Con una singola visualizzazione tra i pacchetti installati nei progetti, è possibile filtrare l'elenco dei pacchetti disponibili dalla raccolta NuGet, dai pacchetti installati e dai pacchetti con aggiornamenti disponibili.

Raccolta NuGet

Sono stati migliorate le prestazioni della raccolta NuGet con un nuovo servizio Web e un client integrato. Per altre informazioni sugli aggiornamenti nuGet, vedere http://docs.nuget.org.

JavaScript

Supporto dell'editor JavaScript

L'editor JavaScript è stato aggiornato per renderlo ancora più utile.

  • Supporto degli strumenti per AngularJS. Ora, quando si scrivono app con AngularJS, IntelliSense fornisce suggerimenti per controller Angular, servizi, factory, direttive e animazioni.
  • Sono supportate nuove funzionalità del linguaggio JavaScript (dalla versione ES6 di JavaScript), incluse classi, funzioni freccia e stringhe modello.
  • Supporto del progetto condiviso della barra di spostamento. È ora possibile usare la barra di spostamento nel progetto Condiviso per i progetti app universali di Windows.
  • Nuova barra di spostamento. La nuova barra di spostamento semplifica lo spostamento tra gli elementi principali nel codice sorgente JavaScript.
  • Commenti JSDoc. I commenti della documentazione scritti nel formato JSDoc vengono ora visualizzati quando si usa IntelliSense. Per altre informazioni sui commenti JSDoc, vedere https://jsdoc.app/.)
  • Valore letterale oggetto IntelliSense. L'editor JavaScript fornisce suggerimenti di IntelliSense quando si passa un valore letterale oggetto alle funzioni documentate usando JSDoc.
  • Espandere/comprimere. È possibile espandere e comprimere più sezioni del codice JavaScript, inclusi commenti su più righe, matrici su più righe e tutti i blocchi su più righe.
  • Supporto elenco attività. È possibile usare la funzionalità Elenco attività per esaminare i commenti delle attività, ad esempio // TODO, nel codice JavaScript.

TypeScript

Visual Studio 2015 include la versione 1.5 degli strumenti TypeScript. Questa versione aggiunge un supporto avanzato per ECMAScript 6, inclusi i moduli, la strutturazione. di, distribuire, simboli, proprietà calcolate, let/const per ES3/ES5 e modelli di stringa con tag per ES3/ES5. Oltre al supporto per ES6, TypeScript 1.5 aggiunge anche il supporto per la proposta di decorator sperimentale ES7, gli output del modulo UMD e System.js e un nuovo file di progetto leggero e portabile denominato "tsconfig.json".

IntelliTest

In Visual Studio 2015 è stato aggiunto IntelliTest che esplora il codice .NET per generare dati di test e una suite di unit test. Per ogni istruzione nel codice viene generato un input di test che eseguirà l'istruzione. Viene eseguita un'analisi del caso per ogni ramo condizionale nel codice. ad esempio:

Vengono analizzate tutte le operazioni che possono generare eccezioni, ad esempio istruzioni if e asserzioni. Questa analisi viene usata per generare dati di test per uno unit test con parametri per ognuno dei metodi, creando unit test con il massimo code coverage. Per migliorare gli unit test, si devono quindi aggiungere le informazioni sul dominio.

Sono state aggiunte anche le funzionalità seguenti a IntelliTest:

  • Unit test con parametri. IntelliTest abilita il supporto per un'API che è possibile usare per guidare la generazione dei dati di test, specificare le proprietà di correttezza del codice sottoposto a test e indirizzare l'esplorazione del codice sottoposto a test. Questa API è disponibile nello spazio dei nomi Microsoft.Pex.Framework e può essere usata nei metodi di test (unit test con parametri, metodi factory) generati da IntelliTest. Di conseguenza, il comando di menu di scelta rapida "IntelliTest" è ora disponibile anche dai metodi di test generati.
  • Creazione di stub di test. "Crea unit test" è ora disponibile nel menu di scelta rapida come comando che consente di creare e configurare un progetto di test, una classe di test e uno stub di test.

Per altre informazioni su IntelliTest (in precedenza noto come "Unit test intelligenti"), vedere Generare unit test per il codice con IntelliTest.

Application Insights

Oltre a vari miglioramenti delle prestazioni e correzioni di bug, Application Insights include ora gli aggiornamenti seguenti:

  • Gli strumenti di Application Insights in Visual Studio fanno ora parte di Visual Studio Connessione ed Services. Per aggiungere Application Insights, aprire la finestra di dialogo servizi Connessione ed e scegliere Application Insights dall'elenco dei servizi.
  • Questo aggiornamento è completamente compatibile con i progetti con Application Insights aggiunti in Visual Studio 2013 Update 3 o in Visual Studio 2013 Update 4.
  • ASP.NET 5 sviluppatori, sviluppatori di App universali di Windows 10 e sviluppatori di App universali di Windows 8.1 possono aggiungere Application Insights ai progetti direttamente da Visual Studio.
  • Gli sviluppatori di App universali di Windows 10 non devono accedere ad Azure per aggiungere Application Insights SDK; Possono invece aggiungerlo usando gli strumenti di Application Insights in Visual Studio.
  • Poiché Application Insights usa la selezione account globale in Visual Studio, è possibile usare lo stesso account in Visual Studio.
  • È ora possibile visualizzare le informazioni introduttive per Application Insights direttamente dalla cartella Riferimento al servizio del progetto; è sufficiente fare clic sulla cartella Attività iniziali.

View Getting Started information for Application Insights from a Project's Service Reference folder.

Gestione del rilascio

Con questa funzionalità è possibile migliorare il processo di gestione del rilascio dell'app, distribuire l'app in un ambiente specifico per ogni fase separata e gestire i passaggi del processo con le approvazioni per ogni passaggio. È possibile configurare una pipeline di versione dall'archiviazione alla distribuzione senza dover installare e gestire un server di gestione delle versioni locale usando il servizio Release Management per Visual Studio Online.

Una versione aggiornata di Release Management è disponibile per Visual Studio 2015. Questo è molto simile al Release Management per Visual Studio 2013 esistente, ma offre prestazioni migliorate nelle aree seguenti:

  • Pagina di avvio del client di gestione delle versioni che mostra una panoramica del processo di rilascio e delle notifiche.
  • Rendering e interattività in altre pagine client di gestione delle versioni, tramite memorizzazione nella cache aggiuntiva.
  • Sincronizzazione dei gruppi di sicurezza di Active Directory e TFS.
  • Creazione di nuove versioni.

È ora possibile definire componenti e definizioni di versione per le definizioni di compilazione del nuovo sistema di compilazione incluso in Team Foundation Server 2015. Durante la definizione del componente, è anche possibile specificare l'artefatto per il componente usando un nome di componente uguale a (o contiene) il nome dell'artefatto pubblicato dalla definizione di compilazione.

Controllo della versione Git

È più facile lavorare con i rami e vedere come le modifiche nella cronologia sono divergenti.

Rami

È possibile organizzare i rami in modo gerarchico specificando un prefisso:

I rami locali e i rami remoti (inclusi quelli non creati in locale) vengono visualizzati separatamente in una visualizzazione albero.

Git branches

E a partire da RC, abbiamo rielaborato la pagina Rami:

  • È ora possibile eseguire il merge da rami remoti, nonché da rami locali.
  • Il ramo in cui si esegue l'unione è ora fisso nel ramo attualmente estratto.
  • È ora possibile eseguire il rebase dal ramo corrente a qualsiasi ramo locale o remoto.
  • È possibile eseguire il checkout di un ramo remoto facendo doppio clic su di esso oppure facendo clic con il pulsante destro del mouse su di esso e quindi scegliendo Checkout (Checkout).

Gestione remota

È ora possibile configurare i remote Git in Team Explorer. In Repository Impostazioni è disponibile una nuova sezione Remotes che mostra i remote attualmente configurati in cui è possibile aggiungere, modificare o rimuovere remote. Ad esempio, se è necessario modificare l'URL del telecomando di origine, è possibile fare clic su Modifica e modificare il recupero e/o l'URL push.

Cronologia dettagliata

È ora possibile vedere in che modo i commit sono divergenti nella cronologia.

Detailed view of history

Nel grafico i commit di merge sono grigi e i commit non di merge sono un colore più brillante. È possibile passare dalla visualizzazione semplice alla visualizzazione dettagliata. Se il grafico viene troncato, è possibile ridimensionarlo.

Sono stati apportati diversi aggiornamenti al grafico Cronologia nella versione RC:

  • È stata aggiunta una barra degli strumenti che consente di controllare il livello di dettaglio visualizzato nel grafico.
  • Vengono ora evidenziate le righe della cronologia per indicare quali commit sono raggiungibili dal commit attualmente selezionato.
  • Ora vengono visualizzate entrambe le righe di cronologia se il ramo locale e remoto è diverso. Ciò è particolarmente utile dopo aver ribasato un ramo locale.

Ribase in Team Explorer

È ora supportata la ribase in Team Explorer. Per avviare una ribase, fare clic sul riquadro a comparsa di ribase nella pagina Rami oppure fare clic con il pulsante destro del mouse su un ramo e selezionare "Rebase On..."

Repository VSO

È stata migliorata l'esperienza introduttiva durante la creazione di un repository VSO e sono state apportate molte altre modifiche per semplificare la creazione di un nuovo repository. Per RC, è stata apportata una piccola modifica per semplificare l'aggiunta di nuovo codice a un repository esistente: se ci si connette a un repository usando Team Explorer, selezionare File > Nuovo progetto, la finestra di dialogo verrà ora avviata nella radice del repository connesso.

Pubblicare in Visual Studio Online

La funzionalità Pubblica in Visual Studio Online semplifica notevolmente il processo di recupero del repository locale in Visual Studio Online. Ciò che è stato usato per eseguire 12 passaggi ora richiede 2. Nella pagina Sincronizzazione Team Explorer la nuova sezione Pubblica in Visual Studio Online consente di selezionare uno degli account utente nel gestore account di Visual Studio. Gli account online di Visual Studio sono automaticamente disponibili in un elenco; non è necessario ricordare gli URL. Quando si è pronti per condividere il codice, è sufficiente selezionare un progetto team nuovo o esistente per ospitare il repository, fare clic su Pubblica.

Publish to Visual Studio Online dialog box

Accesso Single Sign-In

Oggi, come molti altri sviluppatori, sfruttano più servizi cloud durante lo sviluppo delle applicazioni. Ad esempio, è probabile che sia stato aggiunto un back-end cloud alle applicazioni per archiviare i dati, archiviare il codice sorgente nel cloud o pubblicare un'applicazione in un archivio.

In passato, ognuno di questi servizi richiedeva un processo di accesso separato e ogni servizio gestiva separatamente lo stato utente connesso.

Con questa versione si riducono le richieste di autenticazione necessarie per accedere a molti servizi cloud integrati in Visual Studio. A questo punto, quando si esegue l'autenticazione al primo servizio cloud in Visual Studio, si eseguirà automaticamente l'accesso o si ridurranno le richieste di autenticazione per altri servizi cloud integrati.

CodeLens

Per altre informazioni sul codice, rimanere incentrati sul lavoro nell'editor. Trovare riferimenti al codice, modifiche al codice, elementi TFS correlati e unit test, senza guardare lontano dal codice.

In questa versione sono stati sostituiti gli indicatori codeLens "Authors" con i nuovi indicatori di cronologia "Sequenza temporale attività team" e "Autori e modifiche".

  • L'indicatore Sequenza temporale attività team mostra l'ultimo autore e l'ultima modifica apportata. Se si sceglie questo indicatore, viene aperta la visualizzazione Attività team, in cui è possibile cercare i modelli nelle modifiche apportate al codice. Ciò consente di valutare l'impatto delle modifiche nel tempo.
  • L'indicatore Autori e modifiche mostra il numero di autori che hanno modificato il file e il numero di modifiche. La scelta di questo indicatore apre un elenco di tutte le modifiche, i dettagli delle modifiche e i collegamenti per ottenere altre informazioni e visualizzare le versioni precedenti.

Tutte le informazioni degli indicatori sono disponibili quando il codice è ospitato in controllo della versione di Team Foundation (sia in Team Foundation Server che in Visual Studio Online) e nei repository Git. Quando si lavora in Team Foundation Server o Visual Studio Online, è anche possibile ottenere informazioni sugli elementi di lavoro.

Questi indicatori, insieme agli indicatori disponibili nelle versioni precedenti, vengono visualizzati a livello di elemento di codice (metodo, campo o classe) per i file C# e Visual Basic. Di seguito è riportato un esempio dell'indicatore Sequenza temporale attività team per un file C#:

The Team Activity Timeline indicator for a C# file

Di seguito è riportato un esempio dell'indicatore Autori e modifiche per un file C#:

The Authors and Changes indicator for a C# file

Tuttavia, gli indicatori vengono ora visualizzati a livello di file per tutti gli altri tipi di file (ad esempio, C++, SQL, JavaScript e altri tipi di file). Di seguito è riportato un esempio dell'indicatore sequenza temporale attività team per un file che non è un file di codice C# o Visual Basic:

The Team Activity Timeline indicator for a file that is not a C# or Visual Basic code file

Architettura, progettazione e modellazione

Mappe codici e grafici delle dipendenze

Quando si vogliono comprendere le dipendenze specifiche nel codice, visualizzarle creando mappe del codice. È quindi possibile spostarsi tra queste relazioni usando la mappa visualizzata accanto al codice. Le mappe del codice consentono anche di tenere traccia del proprio posto nel codice mentre si lavora o si esegue il debug del codice, quindi si leggerà meno codice mentre si apprenderanno altre informazioni sulla progettazione del codice.

Nella versione RTM finale sono stati creati i menu di scelta rapida per gli elementi di codice e i collegamenti molto più facili da usare raggruppando i comandi in sezioni correlate alla selezione, alla modifica, alla gestione dei gruppi e alla modifica del layout del contenuto del gruppo. Si noti anche che i progetti di test vengono visualizzati in uno stile diverso da altri progetti e che sono state aggiornate le icone per gli elementi sulla mappa a versioni più appropriate.

New groupings in code maps

È stato anche modificato il modo in cui vengono visualizzati i contenuti degli elementi di codice, in modo da poter selezionare più di un gruppo e applicare lo stile di layout desiderato a tutti. È ora possibile ottenere sempre un diagramma delle dipendenze utile quando si espande un assembly, uno spazio dei nomi o un tipo in una mappa del codice.

Select multiple groups and apply one layout in a Code Map

Nelle versioni precedenti di anteprima e versione candidata di Visual Studio 2015 sono state apportate modifiche che consentono di:

  • Ottenere diagrammi dall'alto verso il basso migliorati. Per soluzioni Visual Studio di medie e grandi dimensioni, è ora possibile usare un menu Architettura semplificato per ottenere mappe codici più utili per la propria soluzione. Gli assembly della soluzione vengono raggruppati in base alle cartelle della soluzione, in modo da poterli visualizzare nel contesto e sfruttare lo sforzo che si è messo nella strutturazione della soluzione. Verranno visualizzati immediatamente i riferimenti a progetti e assembly e quindi verranno visualizzati i tipi di collegamento. Inoltre, gli assembly esterni alla soluzione vengono raggruppati in un modo più compatto.
  • Ottenere mappe di codici reattive più rapidamente. Le operazioni di trascinamento della selezione generano un risultato immediato e i collegamenti tra i nodi vengono creati più rapidamente, senza influire sulle operazioni avviate dall'utente successive, ad esempio l'espansione di un nodo o la richiesta di più nodi. In particolare, l'opzione "Ignora la ricompilazione della soluzione" consente di ottenere prestazioni migliori durante la creazione e la modifica di diagrammi. Quando si creano mappe di codice senza compilare la soluzione, vengono ora elaborati tutti i casi d'angolo, ad esempio assembly non compilati.
  • Filtrare nodi e gruppi di elementi di codice. È possibile ordinare rapidamente le mappe visualizzando o nascondendo gli elementi di codice in base alla categoria e raggruppando gli elementi di codice per cartelle di soluzioni, assembly, spazi dei nomi, cartelle di progetti e tipi.
  • Filtrare le relazioni in modo da agevolare la lettura dei diagrammi. Sono inclusi i collegamenti tra gruppi, che rendono meno intrusivo l'uso della finestra di filtro rispetto alle versioni precedenti.
  • L’analisi dei collegamenti di dipendenza tiene in considerazione i filtri. È possibile ottenere un diagramma utile e chiaro quando il diagramma si espande per comprendere i contributi a un collegamento di dipendenza. Il diagramma è meno disordinato e tiene conto delle opzioni di filtro dei collegamenti selezionate.
  • Creare diagrammi da Visualizzazione classi e Visualizzatore oggetti. Trascinare la selezione di file e assembly in una mappa nuova o esistente dalle finestre Visualizzazione classi e Visualizzatore oggetti.

Nel complesso, l'elenco completo dei miglioramenti apportati alle mappe del codice include:

  • Ai progetti di test viene applicato uno stile diverso e tali progetti possono essere filtrati. È ora possibile identificare rapidamente i progetti di test in una mappa perché sono in stile diverso. Inoltre, possono essere filtrati in modo che sia possibile concentrarsi sul codice funzionante dell'applicazione.
  • Gli elementi di codice vengono aggiunti con il relativo contesto. Poiché i diagrammi ora vengono visualizzati con il relativo contesto (fino alla cartella dell'assembly e della soluzione che è possibile filtrare se necessario), si ottengono diagrammi più utili quando si trascinano e rilasciano elementi di codice da Esplora soluzioni, Visualizzazione classi e Visualizzatore oggetti oppure quando si selezionano elementi in Esplora soluzioni e si sceglie Mostra sulla mappa codice.
  • Collegamenti di dipendenza esterna semplificati. I collegamenti di dipendenza non rappresentano più l'ereditarietà di System.Object, System.ValueType, System.Enum e System.Delegate che semplifica la visualizzazione delle dipendenze esterne nella mappa codici.

Altre modifiche di progettazione e modellazione in questa versione:

  • Diagrammi livello. Aggiornare questi diagrammi usando visualizzazione classi e Visualizzatore oggetti. Per soddisfare i requisiti di progettazione software, usare i diagrammi livello per descrivere le dipendenze desiderate per il software. Mantenere il codice coerente con questa progettazione trovando codice che non soddisfa questi vincoli e convalidando il codice futuro con questa baseline.
  • Diagrammi UML. Per creare diagrammi classi e diagrammi sequenze UML, non è più possibile usare codice, Tuttavia, è comunque possibile creare questi diagrammi usando nuovi elementi UML.
  • Esplora architettura Per creare diagrammi, non è più possibile usare Esplora architettura, Tuttavia, è comunque possibile usare Esplora soluzioni.

Servizio di linguaggio XAML

Il servizio di linguaggio XAML è stato ricompilato su .NET Compiler Platform ("Roslyn") in modo da offrire un'esperienza di modifica XAML veloce, affidabile e moderna che include IntelliSense.

In questo modo l'esperienza di creazione XAML è uguale ad altri linguaggi di prima classe in Visual Studio. Verranno inoltre impostati potenti set di funzionalità per il refactoring tra linguaggi a una frequenza molto più veloce.

Varie

Gli agenti per Visual Studio 2015 non richiedono più un test controller

In Agents per Visual Studio 2015 non è necessario un controller di test separato perché gli agenti possono gestire l'orchestrazione comunicando con TFS 2015 o Visual Studio Online.

In tutti i nuovi scenari di Visual Studio 2015 e TFS 2015 è consigliabile usare Agents per Visual Studio 2015.

Tuttavia, se è necessario che l'agente di test o il test controller funzionino con TFS 2013, è consigliabile usare Agents per Visual Studio 2013 Update 5 e configurare il test controller.

Il test controller è compatibile con TFS 2015 e TFS 2013. Tuttavia, il supporto dei test di carico in Visual Studio 2015 non fa parte degli agenti, pertanto è consigliabile installare Agents per Visual Studio 2013 Update 5 e configurare il controller.

Servizi connessi

La nuova finestra di dialogo Aggiungi servizio Connessione ed in Visual Studio 2015 consente di connettere facilmente l'applicazione a app Azure lication Insights, Archiviazione di Azure, Azure Servizi mobili, Office 365 e Salesforce. Per aggiungere un servizio Connessione, fare clic con il pulsante destro del mouse sul nodo Riferimenti e quindi scegliere Aggiungi servizio Connessione ed....

Add a Connected Service

La finestra di dialogo Aggiungi servizio Connessione ed contiene tutti i provider di servizi Connessione installati e fornisce un modo per ottenere altre informazioni sul provider, sulle tecnologie usate e se è supportato nel progetto corrente. Altri provider sono individuabili nella raccolta Estensioni e Aggiornamenti usando il collegamento Trova altri servizi. Anche la finestra di dialogo Aggiungi Connessione ed Service è estendibile. Gli sviluppatori di servizi possono usare Connessione ed Services SDK per creare un provider in grado di migliorare l'individuabilità e favorire l'utilizzo dei servizi.

Enterprise Single Sign-On

Un'attività comune per le applicazioni aziendali consiste nel configurare l'applicazione per l'accesso Single Sign-On aziendale usando Azure Active Directory. È ora possibile farlo facilmente in qualsiasi momento durante la costruzione dell'applicazione facendo clic con il pulsante destro del mouse sull'applicazione e scegliendo Configura Autenticazione di Azure AD.... Verrà visualizzata una procedura guidata simile all'esperienza Aggiungi servizio Connessione ed per guidare l'utente nel processo di configurazione dell'applicazione per l'uso con Active Directory. Se si specifica un Dominio di Active Directory nella procedura guidata, l'applicazione verrà registrata con tale istanza di Active Directory e verrà configurata l'applicazione per richiedere l'accesso.

Specify an Active Directory Domain in the wizard

IIS 10 Express per Visual Studio 2015 RC

La versione RC includeva una nuova versione di IIS 10 Express; la nuova funzionalità include il supporto per HTTP 2.0, nonché una sincronizzazione dei bit con Windows 10.

Altre modifiche: correzioni di bug e problemi noti

Per una descrizione completa dei miglioramenti alla tecnologia, delle correzioni dei bug e dei problemi noti di questa versione, vedere l'articolo della Knowledge Base seguente.

Azure SDK 2.7 per .NET

Azure SDK 2.7 è il primo SDK di Azure supportato per la versione finale di Visual Studio 2015. Ecco alcune delle nuove funzionalità e degli aggiornamenti che consentiranno di migliorare l'esperienza di sviluppo di Azure:

  • Miglioramenti dell'accesso per Visual Studio 2015: Azure SDK 2.7 per Visual Studio 2015 include ora il supporto per gli account che accedono ad Azure tramite Controllo di accesso basati su ruoli, Cloud Solution Providers, DreamSpark e altri tipi di account e sottoscrizioni.
  • Cloud Explorer per Visual Studio 2015: Azure SDK 2.7 include Cloud Explorer per Visual Studio 2015 che offre uno strumento altamente efficiente e scalabile per la ricerca e la visualizzazione delle risorse di Azure, l'ispezione delle relative proprietà e l'esecuzione di azioni di diagnostica e sviluppatore chiave da Visual Studio.
  • Debug remoto per Macchine virtuali in Visual Studio 2015: processi di debug remoto in esecuzione in Macchine virtuali creati usando lo stack di Azure Resource Manager.
  • Strumenti di Azure Resource Manager: sono stati aggiornati gli strumenti di Azure Resource Manager per semplificare l'uso delle nuove attività di compilazione di Visual Studio Online. Sono stati inoltre aggiunti miglioramenti per l'uso di Controllo di accesso basati su ruoli e nuovi tipi di sottoscrizione.
  • app Azure Service Tools: servizio app Tools sono ora disponibili anche in Visual Studio 2015. Questo aggiornamento offre il supporto di profilatura remota per App Web, miglioramenti alla generazione di Swagger per le app per le API e supporto per l'accesso a più account. servizio app strumenti ora usano le API di Gestione risorse di Azure per tutte le funzionalità e abilita il supporto per DreamSpark e i provider di servizi cloud. In questo aggiornamento è stato aggiunto anche il supporto per la versione di anteprima di App per le API di Azure per gli sviluppatori di Visual Studio 2015.
  • Strumenti HDInsight: in questa versione sono state aggiunte visualizzazioni dei grafici di esecuzione per i processi Hive in esecuzione in Tez, è stato esteso il supporto di IntelliSense per Hive DML, è stato aggiunto NuGet per SCP.Net, sono stati aggiornati i modelli Storm e sono stati aggiunti nuovi modelli per Pig.
  • Strumenti di Azure Data Factory: ora inclusi in Azure SDK sono gli strumenti di Azure Data Factory. L'obiettivo è semplificare l'esperienza di creazione di Azure Data Factory e rimuovere i problemi di onboarding e distribuzione. Le esperienze personalizzate e gli strumenti avanzati disponibili negli strumenti di Azure Data Factory migliorano la produttività e l'efficienza sia per gli utenti nuovi che per gli utenti avanzati. Con questa versione, i clienti possono creare e distribuire in modo interattivo pipeline di dati usando l'interfaccia di Visual Studio. Per altre informazioni su questi strumenti, vedere il post di blog di Azure Data Factory.

Windows 10 SDK

Questi strumenti aggiornano Visual Studio 2015 per fornire tutto il necessario per compilare, eseguire il debug e inviare app per qualsiasi dispositivo Windows che esegue il piattaforma UWP (Universal Windows Platform). Gli elementi di rilievo includono:

  • Creare un'app di Windows universale nel linguaggio preferito , C#, VB, C++ o JS, e distribuirla in un dispositivo Windows 10.
  • Nuovi strumenti di debug e diagnostica, inclusi gli strumenti di debug dell'interfaccia utente per le app XAML e un profiler di rete.
  • Creare pacchetti di app per l'invio allo Store unificato.
  • L'emulatore Windows 10 Mobile ora sfrutta l'hardware grafico (GPU) del pc per velocizzare il rendering dello schermo. Offre un ambiente di debug più rapido e reattivo tramite Microsoft RemoteFx.
  • È ora possibile usare la funzionalità di simulazione NFC nell'emulatore di Windows 10 Mobile per compilare e testare app universali abilitate per NFC/prossimità.
  • Supporto della finestra di progettazione XAML avanzata per la creazione di esperienze utente personalizzate per il dispositivo.
  • Compilazione .NET Native di app .NET nel cloud.

Per altre informazioni sugli strumenti di sviluppo di Windows 10, vedi È il momento di aggiornare il tuo mondo e le tue app.

Python Tools per Visual Studio 2.2

Supporto Python completamente gratuito in Visual Studio.

  • CPython, PyPy, IronPython e altro ancora
  • IntelliSense dettagliato
  • Debug interattivo
  • Integrazione con le funzionalità di Visual Studio
  • Gratuito e open source

Per altre informazioni, vedere Python Tools per Visual Studio.

Visual Studio Tools per Unity 2.0

Trasformare Visual Studio in un potente ambiente di sviluppo Unity.

  • Creare giochi multipiattaforma
  • Eseguire il debug da Visual Studio
  • Creare script Unity in Visual Studio
  • Esperienza di produttività migliorata con Visual Studio

Per altre informazioni sulle Visual Studio Tools per Unity, vedere Sviluppo di giochi con Visual Studio.

Strumenti Node.js per Visual Studio 1.1 (RC)

Aggiornamento di ottobre 2021:

aggiornare Cassaforte ly Node.js Strumenti di Visual Studio per Apache Cordova

Trasformare Visual Studio in un potente ambiente di sviluppo Node.js.

  • Gratis e open source
  • Completamento intelligente del codice
  • Debug e profilatura avanzati
  • Integrazione con altre funzionalità di Visual Studio e strumenti di terze parti
  • Supporto node.js, io.js, JavaScript, TypeScript, HTML, CSS e JSON

Altre informazioni su Node.js Tools per Visual Studio.

Office Developer Tools per Visual Studio 2015

Sviluppo con le API di Office 365

  • Gli strumenti api di Office 365 usano i nuovi servizi Connessione ed in Visual Studio 2015 per offrire agli sviluppatori un'esperienza guidata per integrare le API di Office 365 nel progetto.
  • È ora possibile consentire agli strumenti api di Office 365 di configurare automaticamente l'accesso Single Sign-On nelle applicazioni Web ASP.NET MVC selezionando semplicemente "Configura Single Sign-On con Azure AD" nella procedura guidata servizi Connessione ed.
  • Integrando le API di Office 365 nel progetto, gli strumenti API di Office 365 scaricano e installano la versione più recente dei pacchetti NuGet della libreria client dell'API di Office 365 da NuGet.org.

Sviluppo di componenti aggiuntivi di SharePoint

  • Quando si crea un componente aggiuntivo di SharePoint, gli strumenti impostano la versione di SharePoint di destinazione come versione del sito Web di SharePoint di debug specificato nella creazione guidata del progetto. La procedura guidata mostra la versione di SharePoint selezionata e consente di eseguire l'override di tale impostazione predefinita. È possibile modificare la versione di destinazione dopo aver creato il progetto usando la scheda SharePoint in Progettazione progetti.
  • Gli strumenti installano ora un pacchetto NuGet contenente il modello a oggetti lato client di SharePoint Online (SPO-CSOM) nel progetto, quando la versione di destinazione è SharePoint Online. Gli strumenti aggiungono riferimenti agli assembly CSOM di SharePoint Online al progetto. Gli strumenti non si basano più su SharePoint Online Client Component SDK rilasciato nell'Area download Microsoft. In questo modo è più semplice aggiornare gli assembly CSOM in futuro usando il Gestione pacchetti NuGet in Visual Studio.
  • È ora possibile usare sas o stringa di connessione ACS per bus di servizio di Microsoft Azure per eseguire il debug e risolvere i problemi di un ricevitore di eventi remoti nei componenti aggiuntivi di SharePoint.

Sviluppo di componenti aggiuntivi per Office

  • In questa versione, gli strumenti creano sempre nuove app per Office con un manifesto v1.1 anziché v1.0, in modo che le app possano supportare le nuove funzionalità nelle app Web di Office e nei client office 2013. Per le app esistenti per Office che usano un manifesto v1.0, gli strumenti aggiornano il manifesto alla versione 1.1 quando viene usata una nuova funzionalità che richiede un manifesto v1.1.

Altre informazioni su Office Developer Tools per Visual Studio.

Estensione GitHub per Visual Studio 2015

Il modo più semplice per connettersi ai repository GitHub in Visual Studio.

  • Facile da installare
  • Connessione a GitHub in Visual Studio
  • Creare repository
  • Clonare i repository con un clic
  • Pubblicare il lavoro locale in GitHub

Altre informazioni sull'estensione GitHub per Visual Studio.

Test di carico basati sul cloud

Test di carico basati sul cloud dai data center di Azure in tutto il mondo

La configurazione dell'infrastruttura necessaria per eseguire i test di carico è stata semplificata: ora è possibile eseguire test di carico basati sul cloud da qualsiasi data center di Azure supportato in tutto il mondo.

Test di carico basato sul cloud supporta ora la diagnostica avanzata dell'agente

Per questa versione è stata aggiunta la funzionalità per eseguire la diagnostica dell'agente di test per un test di carico basato sul cloud.

Il debug nel cloud è difficile perché i computer non sono accessibili e pertanto non è sempre possibile raccogliere log o altre informazioni dagli agenti di test. Tuttavia, con la diagnostica avanzata dell'agente, è possibile raccogliere i log dagli agenti di test e associarli ai risultati dei test di carico cloud.