Condividi tramite


Note sulla versione di ASP.NET and Web Tools 2013.2 per Visual Studio 2013

di Microsoft

installation notes (Nota di supporto SAP n. 1984787: note di installazione per SUSE Linux Enterprise Server 12)

ASP.NET e Strumenti Web per Visual Studio 2013.2 sono inclusi nel programma di installazione principale e possono essere scaricati come parte di Visual Studio 2013 Update 2.

Documentazione

Le esercitazioni e altre informazioni su ASP.NET e Strumenti Web per Visual Studio 2013.2 sono disponibili nel sito Web ASP.NET.

Requisiti software

ASP.NET e Strumenti Web per Visual Studio 2013.2 richiede Visual Studio 2013.

Nuove funzionalità in ASP.NET e strumenti Web per Visual Studio 2013.2

Le sezioni seguenti descrivono le funzionalità introdotte nella versione.

Un modello di progetto ASP.NET

  • Aggiornamenti ai modelli di progetto ASP.NET per supportare la conferma dell'account e la reimpostazione della password.
  • Aggiornare API Web ASP.NET modello per supportare l'autenticazione usando account aziendali locali.
  • Il modello spa ASP.NET contiene ora l'autenticazione basata su MVC e sulle visualizzazioni lato server. Il modello dispone di un controller WebAPI accessibile solo dagli utenti autenticati.

Supportare SSL all'avvio di applicazioni Web in IIS Express

Per eliminare l'avviso di sicurezza durante l'esplorazione e il debug di HTTPS in localhost, è stata aggiunta una finestra di dialogo per consentire a Internet Explorer e Chrome di considerare attendibile il certificato SSL express IIS autofirmato.

Ad esempio, è possibile impostare una proprietà del progetto Web per l'uso di SSL. Fare clic su F4 per visualizzare la finestra di dialogo delle proprietà. Impostare SSL abilitato su true. Copiare l'URL SSL.

SSL Enabled, proprietà

Impostare la scheda Web della pagina delle proprietà del progetto Web per l'uso dell'URL basato su HTTPS (l'URL SSL sarà https://localhost:44300/ a meno che non siano stati creati siti Web SSL in precedenza).

Impostare l'URL del progetto (HTTPS)

Premere CTRL+F5 per eseguire l'applicazione. Seguire le istruzioni per considerare attendibile il certificato autofirmato generato da IIS Express.

Avviso SSL

Leggere la finestra di dialogo Avviso di sicurezza e quindi fare clic su se si vuole installare il certificato che rappresenta localhost.

Avviso di sicurezza

Il sito verrà visualizzato in Internet Explorer o Chrome senza l'avviso del certificato nel browser.

Pagina HTTPS senza avvisi

Firefox usa il proprio archivio certificati, quindi visualizzerà un avviso.

Miglioramenti apportati all'editor Web di Visual Studio

  • Nuovo elemento e editor di progetto JSON: è stato aggiunto un elemento e un editor di progetto JSON a Visual Studio. Le funzionalità correnti dell'editor JSON includono colorazione, convalida della sintassi, completamento parentesi graffa, struttura, impostazione delle opzioni degli strumenti e altro ancora.

    JSON Editor

    IntelliSense supporta ora JSON Schema v3 e v4. È disponibile una casella combinata dello schema per scegliere gli schemi esistenti, modificare il percorso dello schema locale o semplicemente trascinare un file JSON di progetto per ottenere il percorso relativo.

    JSON Intellisense Editor dello schema JSON

  • Nuovo editor sass (SCSS): è stato aggiunto LESS in VS2013 RTM e ora è disponibile un elemento e un editor di progetto Sass. Le funzionalità dell'editor sass sono paragonabili all'editor LESS e includono colorazione, variabile e Mixins IntelliSense, comment/uncomment, informazioni rapide, formattazione, convalida della sintassi, struttura, definizione goto, selezione colori, impostazione delle opzioni degli strumenti e così via.

    Aggiungi nuovo elemento: Foglio di stile SCSS Editor foglio di stile

  • Nuova selezione URL nei documenti HTML, Razor, CSS, LESS e Sass: VS 2013 fornito senza selezione URL all'esterno delle pagine Web Form. La nuova selezione URL per gli editor HTML, Razor, CSS, LESS e Sass è un selettore di tipi fluente senza dialoghi che riconosce ".". e filtra gli elenchi di file in modo appropriato per i tag e i collegamenti img.

    Screenshot della nuova digitazione fluent senza finestra di dialogo che consente di filtrare gli elenchi di file in modo appropriato. L'esempio illustra i collegamenti alle immagini.Screenshot della nuova digitazione fluent senza finestra di dialogo che consente di filtrare gli elenchi di file in modo appropriato. L'esempio illustra i collegamenti h t m l.Screenshot del nuovo selettore per gli editor di c s che filtra gli elenchi di file in modo appropriato per i m g tag e collegamenti.

  • Aggiornamenti all'editor LESS aggiungendo altre funzionalità

  • Aggiornamento di Knockout IntelliSense: è stata aggiunta una sintassi KnockOut non standard per VS intelliSense, sintassi "ko-vs-editor viewModel:". Può essere usato per eseguire l'associazione a più modelli di visualizzazione in una pagina usando i commenti nel formato:

    Knockout Intellisense

    È stato anche aggiunto il supporto per ViewModel IntelliSense annidato, quindi è possibile esaminare gli oggetti annidati in modo approfondito in ViewModel.

    <div data-bind="text: foo.bar.baz.etc" />

    IntelliSense visualizzato è l'intero IntelliSense dell'oggetto JavaScript.

    IntelliSense che mostra l'oggetto JavaScript completo

  • Nuova selezione URL nei documenti HTML, Razor, CSS, LESS e Sass: VS 2013 fornito senza selezione URL all'esterno delle pagine Web Form. La nuova selezione URL per gli editor HTML, Razor, CSS, LESS e Sass è un selettore di tipi fluente senza dialoghi che riconosce ".". e filtra gli elenchi di file in modo appropriato per i tag e i collegamenti img.

    Screenshot della nuova digitazione fluent e senza finestra di dialogo, che consente di filtrare gli elenchi di file in modo appropriato per i tag e i collegamenti di i m g.Screenshot della nuova digitazione fluente senza finestra di dialogo che consente di filtrare gli elenchi di file in modo appropriato, visualizzando i collegamenti h t m l.Screenshot della nuova finestra di dialogo senza dialogo, digitando Fluent Picker per gli editor di c s s che filtra gli elenchi di file in modo appropriato per i m g tag e collegamenti.

  • Il collegamento al browser supporta ora le connessioni HTTPS ed elenca che in Dashboard con altre connessioni, purché il certificato sia considerato attendibile dal browser.
  • Mapping di origine HTML statico
  • Supporto spa per i dati di mapping
  • Aggiornare automaticamente i dati di mapping

Supporto per App Web del servizio app Azure in Visual Studio

Creare risorse remote di Azure durante la creazione di un nuovo progetto Web

È stata aggiunta una casella di controllo "Crea risorse remote" di Azure nella finestra di dialogo della nuova applicazione Web. Scegliendolo, sarà possibile integrare l'esperienza di creazione di una nuova applicazione Web, la configurazione del sito di pubblicazione di Azure per il test e la creazione del profilo di pubblicazione in pochi semplici passaggi.

Nuovo progetto con risorse di AzurePubblicazione in Azure

Miglioramenti alla pubblicazione Web

  • Migliorare l'esperienza utente per la pubblicazione.

ASP.NET Scaffolding

  • Supporto per enumerazioni: se il modello usa enumerazioni, lo Scaffolder MVC genererà l'elenco a discesa per Enum. In questo modo vengono usati gli helper Enum in MVC.
  • Supporto bootstrap: aggiornamento dell'editorPer i modelli in Scaffolding MVC in modo che usino le classi Bootstrap.
  • Supporto dei pacchetti: gli Scaffolder MVC e API Web aggiungeranno 5.1 pacchetti per MVC e API Web

Gli screenshot seguenti illustrano lo scaffolding dei modelli.

  • Codice del modello:

    Codice del modello

  • Compilare il codice del modello, fare clic con il pulsante destro del mouse e selezionare Aggiungi, Nuovo elemento con scaffolding.

    Aggiungi nuovo elemento con scaffolding

  • Scegliere controller MVC5 con visualizzazioni usando Entity Framework:

    Aggiungere un nuovo controller MVC5 con visualizzazioni

  • Aggiungere controller usando il modello:

    Screenshot della finestra di dialogo Aggiungi controller con il campo Classe modello selezionato e Classe contesto dati selezionato e evidenziato.

  • Controllare il codice generato, ad esempio Views/WeekdayModels/Edit.cshtml contiene @Html.EnumDropDownListFor: Visualizzazione contenente EnumDropDownListFor

  • Eseguire la pagina per visualizzare la casella combinata enumerazione generata, si noti che se un valore può essere Null, è possibile scegliere una stringa vuota per la casella combinata. Ad esempio, la pagina Crea mostra quanto segue:

    Casella combinata che consente una stringa vuota

NuGet 2.8.1

NuGet 2.8.1 RTM verrà rilasciato nell'aprile 2014. Ecco i punti salienti delle note sulla versione, ma consultare le note sulla versione complete per altre informazioni su queste modifiche.

  • Applicazioni windows Phone 8.1 di destinazione: NuGet 2.8.1 supporta ora la destinazione delle applicazioni di Windows Phone 8.1 usando i moniker del framework di destinazione 'WindowsPhoneApp', 'WPA', 'WindowsPhoneApp81' e 'WPA81'.

  • Risoluzione delle patch per le dipendenze: quando si risolve le dipendenze dei pacchetti, NuGet ha storicamente implementato una strategia di selezione della versione minima principale e secondaria del pacchetto che soddisfa le dipendenze del pacchetto. A differenza della versione principale e secondaria, tuttavia, la versione della patch è stata sempre risolta nella versione più recente. Anche se il comportamento era ben intenzionato, ha creato una mancanza di determinismo per l'installazione di pacchetti con dipendenze.

  • Opzione DependencyVersion: anche se NuGet 2.8 modifica il comportamento predefinito per la risoluzione delle dipendenze, aggiunge anche un controllo più preciso sul processo di risoluzione delle dipendenze tramite l'opzione -DependencyVersion nella console di Gestione pacchetti. L'opzione consente di risolvere le dipendenze alla versione più bassa possibile (comportamento predefinito), alla versione più alta possibile o alla versione secondaria o patch più recente. Questa opzione funziona solo per install-package nel comando di PowerShell.

  • Attributo DependencyVersion: oltre all'opzione -DependencyVersion descritta in precedenza, NuGet ha consentito anche la possibilità di impostare un nuovo attributo nel file nuget.config definendo il valore predefinito, se l'opzione -DependencyVersion non è specificata in una chiamata di install-package. Questo valore verrà rispettato anche dalla finestra di dialogo di Gestione pacchetti NuGet per tutte le operazioni del pacchetto di installazione. Per impostare questo valore, aggiungere l'attributo seguente al file nuget.config:

    <config> <add key="dependencyversion" value="Highest" /> </config>

  • Anteprima delle operazioni NuGet con -WhatIf: alcuni pacchetti NuGet possono avere grafici di dipendenza profondi e, di conseguenza, può essere utile durante un'installazione, una disinstallazione o un'operazione di aggiornamento per verificare prima cosa accadrà. NuGet 2.8 aggiunge powerShell standard: cosa accade se passare ai comandi install-package, uninstall-package e update-package per abilitare la visualizzazione dell'intera chiusura dei pacchetti a cui verrà applicato il comando.

  • Pacchetto di downgrade: non è insolito installare una versione non definitiva di un pacchetto per analizzare le nuove funzionalità e quindi decidere di eseguire il rollback all'ultima versione stabile. Prima di NuGet 2.8, si tratta di un processo in più passaggi per disinstallare il pacchetto non definitiva e le relative dipendenze e quindi installare la versione precedente. Con NuGet 2.8, tuttavia, il pacchetto di aggiornamento eseguirà ora il rollback dell'intera chiusura del pacchetto (ad esempio, l'albero delle dipendenze del pacchetto) alla versione precedente.

  • Dipendenze sviluppo: molti tipi diversi di funzionalità possono essere distribuiti come pacchetti NuGet, inclusi gli strumenti usati per ottimizzare il processo di sviluppo. Questi componenti, mentre possono essere strumentali nello sviluppo di un nuovo pacchetto, non devono essere considerati una dipendenza del nuovo pacchetto quando viene pubblicato in un secondo momento. NuGet 2.8 consente a un pacchetto di identificarsi nel file con estensione nuspec come developmentDependency. Al momento dell'installazione, questi metadati verranno aggiunti anche al file packages.config del progetto in cui è stato installato il pacchetto. Quando il file packages.config viene analizzato in un secondo momento per le dipendenze NuGet durante nuget.exe pack, escluderà tali dipendenze contrassegnate come dipendenze di sviluppo.

  • Singoli pacchetti.config per piattaforme diverse: quando si sviluppano applicazioni per più piattaforme di destinazione, è comune avere file di progetto diversi per ognuno dei rispettivi ambienti di compilazione. È anche comune usare pacchetti NuGet diversi in file di progetto diversi, perché i pacchetti hanno diversi livelli di supporto per piattaforme diverse. NuGet 2.8 offre un supporto migliorato per questo scenario creando file packages.config diversi per file di progetto specifici della piattaforma.

  • Fallback alla cache locale: anche se i pacchetti NuGet vengono in genere utilizzati da una raccolta remota, ad esempio la raccolta NuGet usando una connessione di rete, esistono molti scenari in cui il client non è connesso. Senza una connessione di rete, il client NuGet non è riuscito a installare correttamente i pacchetti, anche quando tali pacchetti erano già presenti nel computer del client nella cache NuGet locale. NuGet 2.8 aggiunge il fallback automatico della cache alla console di Gestione pacchetti.

    La funzionalità di fallback della cache non richiede argomenti di comando specifici. Inoltre, il fallback della cache attualmente funziona solo nella console di Gestione pacchetti. Il comportamento attualmente non funziona nella finestra di dialogo di gestione pacchetti.

  • Correzioni di bug: una delle principali correzioni di bug apportate è stata un miglioramento delle prestazioni nel comando update-package -reinstall.

    Oltre a queste funzionalità e alla correzione delle prestazioni menzionata in precedenza, questa versione di NuGet include anche molte altre correzioni di bug. Nella versione sono stati risolti 181 problemi totali. Per un elenco completo degli elementi di lavoro corretti in NuGet 2.8, visualizzare Lo strumento di rilevamento dei problemi NuGet per questa versione.

Web Form ASP.NET

ASP.NET MVC 5.1.2

API Web ASP.NET 2.1.2

Pagine Web ASP.NET 3.1.2

Entity Framework 6.1

Entity Framework è stato aggiornato alla versione 6.1 sia per il runtime che per gli strumenti. Entity Framework (EF) 6.1 è un aggiornamento secondario di Entity Framework 6 e include una serie di correzioni di bug e nuove funzionalità. Per informazioni dettagliate su EF6.1, inclusi i collegamenti alla documentazione per le nuove funzionalità, vedere Cronologia delle versioni di Entity Framework. Le nuove funzionalità di questa versione includono:

  • Il consolidamento degli strumenti offre un modo coerente per creare un nuovo modello di Entity Framework. Questa funzionalità estende la procedura guidata ADO.NET Entity Data Model per supportare la creazione di modelli Code First, inclusa la reverse engineering da un database esistente. Queste funzionalità erano disponibili in precedenza nella qualità beta in EF Power Tools.
  • La gestione degli errori di commit delle transazioni fornisce il nuovo System.Data.Entity.Infrastructure.CommitFailureHandler che usa la possibilità appena introdotta di intercettare le operazioni delle transazioni. CommitFailureHandler consente il ripristino automatico da errori di connessione durante il commit di una transazione.
  • IndexAttribute consente di specificare gli indici inserendo un attributo in una proprietà (o proprietà) nel modello Code First. Code First creerà quindi un indice corrispondente nel database.
  • L'API di mapping pubblico fornisce l'accesso alle informazioni fornite da Entity Framework sulla modalità di mapping delle proprietà e dei tipi alle colonne e alle tabelle nel database. Nelle versioni precedenti questa API era interna.
  • Possibilità di configurare gli intercettori tramite il file App/Web.config (consentendo l'aggiunta di intercettori senza ricompilare l'applicazione).
  • DatabaseLogger è un nuovo intercettore che semplifica la registrazione di tutte le operazioni di database in un file. In combinazione con la funzionalità precedente, questo consente di attivare facilmente la registrazione delle operazioni di database per un'applicazione distribuita, senza la necessità di ricompilare.
  • Il rilevamento delle modifiche del modello di migrazioni è stato migliorato in modo che le migrazioni con scaffolding siano più accurate. Le prestazioni del processo di rilevamento delle modifiche sono state notevolmente migliorate.
  • Miglioramenti delle prestazioni, tra cui operazioni ridotte del database durante l'inizializzazione, ottimizzazioni per il confronto di uguaglianza null nelle query LINQ, generazione di viste più veloce (creazione di modelli) in più scenari e materializzazione più efficiente delle entità rilevate con più associazioni.

identità ASP.NET 2.0.0

  • Autenticazione a due fattori: ASP.NET Identity supporta ora l'autenticazione a due fattori. L'autenticazione a due fattori offre un ulteriore livello di sicurezza per gli account utente nel caso in cui la password venga compromessa. Esiste anche la protezione per gli attacchi di forza bruta contro i codici a due fattori.

  • Blocco account: consente di bloccare l'utente se l'utente immette la password o i codici a due fattori in modo non corretto. È possibile configurare il numero di tentativi non validi e l'intervallo di tempo per gli utenti bloccati. Uno sviluppatore può facoltativamente disattivare blocco account per determinati account utente, se necessario.

  • Conferma account: il sistema di identità ASP.NET supporta ora la conferma dell'account. Questo è uno scenario abbastanza comune nella maggior parte dei siti Web oggi in cui, quando si esegue la registrazione per un nuovo account sul sito Web, è necessario confermare la posta elettronica prima di poter eseguire qualsiasi operazione nel sito Web. La conferma tramite posta elettronica è utile perché impedisce la creazione di account falsi. Questo è estremamente utile se usi la posta elettronica come metodo di comunicazione con gli utenti del tuo sito Web, ad esempio siti forum, banche, e-commerce o siti Web social.

  • Reimpostazione password: la reimpostazione della password è una funzionalità in cui l'utente può reimpostare le password se ha dimenticato la password.

  • Security Stamp (Disconnetti ovunque): supporta un modo per rigenerare il token di sicurezza per l'utente nei casi in cui l'utente modifica la password o qualsiasi altra informazione correlata alla sicurezza, ad esempio la rimozione di un account di accesso associato (ad esempio Facebook, Google, Account Microsoft e così via). Questa operazione è necessaria per assicurarsi che tutti i token generati con la vecchia password siano invalidati. Nel progetto di esempio, se si modifica la password dell'utente, viene generato un nuovo token per l'utente e tutti i token precedenti vengono invalidati. Questa funzionalità offre un ulteriore livello di sicurezza per l'applicazione perché quando si modifica la password, si verrà disconnessi da qualsiasi posizione (tutti gli altri browser) in cui si è connessi a questa applicazione.

  • Rendere estendibile il tipo di chiave primaria per utenti e ruoli: in ASP.NET Identity 1.0 il tipo di chiave primaria per la tabella Utenti e ruoli era stringhe. Ciò significa che quando il sistema di identità ASP.NET è stato salvato in modo permanente in SQL Server usando Entity Framework, è stato usato nvarchar. Sono state discusse molte discussioni su questa implementazione predefinita in Stack Overflow e basate sul feedback in ingresso. È stato fornito un hook di estendibilità in cui è possibile specificare la chiave primaria della tabella Utenti e ruoli. Questo hook di estendibilità è particolarmente utile se si esegue la migrazione dell'applicazione e l'applicazione archiviava UserIds sono GUID o int.

  • Supporto di IQueryable per utenti e ruoli: aggiunta del supporto per IQueryable in UsersStore e RolesStore, è possibile ottenere facilmente l'elenco di utenti e ruoli.

  • Supportare l'operazione di eliminazione tramite UserManager

  • Indicizzazione in UserName: in ASP.NET'implementazione di Identity Entity Framework è stato aggiunto un indice univoco nel nome utente usando il nuovo IndexAttribute in EF 6.1.0. In questo modo si garantisce che i nomi utente siano sempre univoci e che non vi sia una race condition in cui si potrebbe finire con nomi utente duplicati.

  • Convalida password avanzata: il validator della password fornito in ASP.NET Identity 1.0 era un validator di password abbastanza semplice che convalidava solo la lunghezza minima. È disponibile un nuovo validator di password che offre un maggiore controllo sulla complessità della password. Si noti che, anche se si attivano tutte le impostazioni in questa password, è consigliabile abilitare l'autenticazione a due fattori per gli account utente.

  • Middleware IdentityFactory/ CreatePerOwinContext:

    • User Manager: è possibile usare l'implementazione factory per ottenere un'istanza di UserManager dal contesto OWIN. Questo modello è simile a quello usato per ottenere AuthenticationManager dal contesto OWIN per SignIn e SignOut. Si tratta di un modo consigliato per ottenere un'istanza di UserManager per ogni richiesta per l'applicazione.
    • DbContextFactory: ASP.NET Identity usa Entity Framework per rendere persistente il sistema di identità in SQL Server. A tale scopo, il sistema di gestione delle identità ha un riferimento a ApplicationDbContext. Il middleware DbContextFactory restituisce un'istanza di ApplicationDbContext per richiesta che è possibile usare nell'applicazione.
  • pacchetto NuGet di esempi di identità ASP.NET: il pacchetto NuGet samples può semplificare l'installazione e l'esecuzione di esempi per ASP.NET Identity e seguire le procedure consigliate. Questo è un esempio ASP.NET'applicazione MVC. Modificare il codice in base all'applicazione prima di distribuirlo nell'ambiente di produzione. L'esempio deve essere installato in un'applicazione ASP.NET vuota. Per altre informazioni sul pacchetto, vedere il post di blog seguente: Annuncio di RTM di ASP.NET Identity 2.0.0

Componenti di Microsoft OWIN

In questa versione sono stati corretti molti bug.

ASP.NET SignalR 2.0.2

In questa versione sono stati corretti molti bug. Per informazioni più dettagliate, vedere le note sulla versione 2.0.2.