Novità di ASP.NET e dello sviluppo Web

Aggiornamento: novembre 2007

.NET Framework 3.5 Service Pack 1 include miglioramenti per ASP.NET in aree mirate. Anche Visual Studio 2008 e Microsoft Visual Web Developer Express Edition includono miglioramenti e nuove funzionalità per ottimizzare lo sviluppo di risorse Web.

I progressi più significativi riguardano il supporto migliorato per lo sviluppo di siti Web con supporto AJAX e il supporto per Language Integrated Query (LINQ). Altri miglioramenti includono nuovi controlli server e tipi, una nuova libreria dei tipi client orientata a oggetti e un supporto IntelliSense completo in Visual Studio 2008 e Microsoft Visual Web Developer Express Edition per l'utilizzo di ECMAScript (JavaScript o JScript).

Nelle seguenti sezioni di questo argomento vengono descritte le modifiche apportate in ASP.NET e Visual Web Developer.

  • Miglioramenti di ASP.NET disponibili in SP1

  • Miglioramenti di ASP.NET disponibili nella versione 3.5

  • Miglioramenti in Visual Web Developer

Miglioramenti di ASP.NET disponibili in SP1

Nelle seguenti sezioni vengono fornite informazioni sui miglioramenti e le nuove funzionalità di Visual Studio 2008 e Visual Web Developer Express Edition.

Dynamic Data

ASP.NET Dynamic Data è un framework che consente di creare facilmente applicazioni Web ASP.NET basate sui dati. Questa operazione viene eseguita individuando automaticamente il modello dati in fase di esecuzione e determinando da esso il comportamento dell'interfaccia utente. Un framework delle pagine di supporto temporaneo fornisce immediatamente un sito Web funzionale per la visualizzazione e la modifica dei dati. Queste pagine di supporto temporaneo possono quindi essere personalizzate facilmente utilizzando metadati e modelli o creando pagine ASP.NET standard per eseguire l'override del comportamento predefinito. Allo stesso tempo, le applicazioni Web ASP.NET esistenti possono integrare facilmente elementi della logica relativa alle pagine di supporto temporaneo con le rispettive pagine esistenti.

Routing degli URL

Il routing degli URL in ASP.NET consente di utilizzare URL di cui non è necessario eseguire il mapping a specifici file in un sito Web. Di conseguenza, in un'applicazione Web è possibile utilizzare URL descrittivi dell'azione dell'utente e pertanto più facilmente comprensibili da parte di quest'ultimo. Nel routing degli URL vengono definiti i modelli di URL che contengono segnaposto per i valori utilizzati durante la gestione delle richieste di URL. In fase di esecuzione le parti di URL che seguono il nome dell'applicazione vengono analizzate in valori discreti, in base a un modello di URL definito dall'utente.

Controllo EntityDataSource

Il controllo EntityDataSource supporta gli scenari di associazione dati basati sul modello Entity Data Model (EDM). La specifica del modello EDM rappresenta i dati come insiemi di entità e relazioni. Il modello EDM è utilizzato dall'Entity Framework nel mapping relazionale a oggetti e in altri scenari come ADO.NET Data Services. Gli utenti abituati al modello in fase di progettazione dei controlli di associazione dati di ASP.NET troveranno la superficie di programmazione del controllo EntityDataSource simile a quella di altri controlli origine dati.

Il controllo EntityDataSource gestisce per conto di controlli associati a dati presenti nella pagina le operazioni di creazione, lettura, aggiornamento ed eliminazione relative a un'origine dati. Il controllo EntityDataSource utilizza griglie modificabili, form con funzionalità di ordinamento e filtro controllate dall'utente, controlli elenco a discesa a doppia associazione e pagine Master-Details. Il controllo EntityDataSource è in grado di ottenere valori di parametri di query da controlli di pagina, parametri di query aggiunti in coda all'URI di pagina, cookie e altri oggetti parametro di ASP.NET.

Nuove estensioni per ASP.NET AJAX

Le nuove estensioni per ASP.NET AJAX disponibili in SP1 offrono un maggiore controllo sulla cronologia del browser quando si utilizza il pulsante Indietro. Consentono inoltre la combinazione automatica in un unico script composito di più script client. Questa operazione abbrevia i tempi di caricamento degli script riducendo il numero percorsi di andata e ritorno al server necessari.

Formattazione JScript

Le funzionalità di formattazione del codice sono state estese in modo da supportare JScript in Visual Studio e Visual Web Developer Express Edition. Il codice può essere formattato manualmente per un documento o una selezione oppure automaticamente durante la digitazione.

Miglioramenti di ASP.NET disponibili nella versione 3.5

.NET Framework versione 3.5 include miglioramenti per ASP.NET nelle seguenti aree:

  • Nuovi controlli server, tipi, e una libreria di script client che interagiscono per consentire di sviluppare applicazioni Web di tipo AJAX.

  • Estensione dell'autenticazione basata su form e su server, della gestione dei ruoli e dei servizi profili come servizi Web utilizzabili dalle applicazioni basate su Web.

  • Un nuovo controllo EntityDataSource che espone il modello Entity Data Model tramite l'architettura del controllo origine dati di ASP.NET.

  • Un nuovo controllo dati ListView che visualizza i dati e fornisce un'interfaccia utente ampiamente personalizzabile.

  • Un nuovo controllo LinqDataSource che espone Language Integrated Query (LINQ) tramite l'architettura del controllo origine dati di ASP.NET.

  • Un nuovo strumento di unione (Aspnet_merge.exe) che unisce assembly precompilati per supportare una distribuzione flessibile e la gestione del rilascio. Questa funzionalità non è disponibile in Visual Web Developer Express Edition.

.NET Framework versione 3.5 viene inoltre integrato con IIS 7.0. Ora è possibile utilizzare servizi ASP.NET quali l'autenticazione basata su form e la memorizzazione nella cache per tutti i tipi di contenuto, non solo per le pagine Web ASP.NET (file ASPX). ASP.NET e IIS 7.0 utilizzano infatti la stessa pipeline delle richieste. Grazie a una pipeline di elaborazione delle richieste unificata, è possibile utilizzare codice gestito per sviluppare moduli della pipeline HTTP funzionanti con tutte le richieste in IIS. In aggiunta, i moduli e i gestori IIS e ASP.NET supportano ora una configurazione unificata. Per ulteriori informazioni, vedere Cenni preliminari sul ciclo di vita delle applicazioni ASP.NET per IIS 7.0.

Sviluppo AJAX

.NET Framework versione 3.5 consente di creare applicazioni Web dotate di interfacce utente innovative con componenti client riutilizzabili. È possibile sviluppare pagine Web utilizzando un approccio basato su server, su client o una combinazione di entrambi, in base alle proprie esigenze. I modelli di programmazione basati su server e su client AJAX possiedono le seguenti caratteristiche:

  • Controlli server che supportano lo sviluppo AJAX basato su server. come avviene per i controlli ScriptManager, UpdatePanel, UpdateProgress e Timer. Questi controlli consentono di ottenere un comportamento client dettagliato, ad esempio rendering a pagina parziale e visualizzazione dello stato di aggiornamento durante i postback asincroni, utilizzando pochi o nessuno script client.

  • La Microsoft AJAX Library che supporta lo sviluppo basato sul client orientato a oggetti è indipendente dal browser. La libreria client, oltre a supportare i nuovi controlli server abilitati per AJAX, consente di sviluppare componenti client personalizzati che estendono gli elementi DOM o che rappresentano un elemento DOM.

  • Classi server che consentono di sviluppare controlli server che effettuano il mapping a componenti client personalizzati con proprietà ed eventi impostati in modo dichiarativo. I tipi di server che supportano questa funzionalità includono i controlli derivati dalle classi base ExtenderControl o ScriptControl o che implementano le interfacce IExtenderControl o IScriptControl.

  • Supporto per globalizzazione e localizzazione di script tramite script client. La globalizzazione consente di visualizzare date e numeri in base a un valore locale (impostazioni locali). La localizzazione consente di specificare contenuto localizzato (testo, immagini e così via) nei componenti client degli elementi dell'interfaccia utente o nei messaggi di eccezione.

  • Accesso ai servizi Web e ai servizi di autenticazione ASP.NET, di gestione dei ruoli e di applicazioni per la gestione dell’analisi.

.NET Framework versione 3.5 semplifica l'attivazione di aggiornamenti a pagina parziale asincroni in una pagina, evitando l'overhead di postback a pagina intera. È possibile inserire controlli esistenti e markup nei controlli UpdatePanel. I postback all'interno di un controllo UpdatePanel diventano asincroni e aggiornano solo la parte della pagina contenuta nel pannello, semplificando così le attività dell'utente. È possibile visualizzare lo stato dell’aggiornamento a pagina parziale utilizzando i controlli UpdateProgress.

Informazioni sullo sviluppo AJAX in ASP.NET

La documentazione fornisce informazioni dettagliate sullo sviluppo di applicazioni Web di tipo AJAX in ASP.NET. Per iniziare, seguire la sequenza di argomenti descritti in Aggiunta di funzionalità AJAX e client.

Servizi Web e servizi delle applicazioni

.NET Framework versione 3.5 consente di creare servizi Web basati su ASP.NET (ASMX) e su WCF che possono essere chiamati dalle pagine Web nello script client tramite la Microsoft AJAX Library. È anche possibile chiamare servizi delle applicazioni basati su server ed esposti come servizi Web, tra cui l'autenticazione basata su form, la gestione dei ruoli e i profili. Questi servizi possono essere utilizzati in applicazioni compatibili con WCF, incluse le pagine Web con supporto AJAX e i client Windows Form. Di conseguenza, le applicazioni compilate con queste tecnologie ASP.NET o WCF possono condividere le informazioni messe a disposizione dai servizi delle applicazioni. Per ulteriori informazioni, vedere Servizi Web in ASP.NET AJAX e Utilizzo dei servizi Web ASP.NET.

Controllo dati ListView

Il controllo ListView combina diversi aspetti di controlli dati esistenti. Il controllo ListView è utile per la visualizzazione dei dati in una struttura ripetuta, analogamente ai controlli DataList e Repeater. Tuttavia, a differenza di tali controlli, ListView supporta le operazioni di modifica, inserimento ed eliminazione, così come l'ordinamento e lo spostamento. La funzionalità di spostamento per ListView è fornita dal nuovo controllo DataPager.

ListView è un controllo ampiamente personalizzabile che consente di utilizzare modelli e stili per definire la propria interfaccia utente. Come accade per i controlli Repeater, DataList e FormView, i modelli di ListView non sono predefiniti per eseguire il rendering dell'interfaccia utente specifica nel browser. Per ulteriori informazioni, vedere la classe Cenni preliminari sul controllo server Web ListView.

Controllo DataPager

Il controllo DataPager viene utilizzato per eseguire lo spostamento tra i dati visualizzati da un controllo che implementa l'interfaccia IPageableItemContainer, ad esempio il controllo ListView. DataPager supporta l'interfaccia di spostamento incorporata. Tale interfaccia può essere specificata tramite l'oggetto NumericPagerField, che consente agli utenti di selezionare una pagina utilizzando il numero di pagina. È anche possibile utilizzare l'oggetto NextPreviousPagerField, che consente agli utenti di spostarsi tra le pagine, una pagina alla volta, o di passare direttamente alla prima o all'ultima pagina. In alternativa, è possibile creare un'interfaccia di spostamento personalizzata mediante l'oggetto TemplatePagerField.

Controllo LinqDataSource

Il controllo LinqDataSource espone Language Integrated Query (LINQ) tramite l'architettura del controllo origine dati di ASP.NET. LinqDataSource viene utilizzato per creare una pagina Web che recupera o modifica i dati utilizzando il modello di programmazione fornito da LINQ. È possibile semplificare il codice in una pagina Web consentendo al controllo LinqDataSource di creare automaticamente i comandi per l'interazione con i dati. Il controllo LinqDataSource consente di scrivere una minore quantità di codice per eseguire operazioni sui dati rispetto a quando si utilizza il controllo SqlDataSource o ObjectDataSource. Un altro vantaggio del controllo LinqDataSource consiste nell'apprendimento di un unico modello di programmazione per interagire con diversi tipi di origini dati.

È possibile utilizzare il markup dichiarativo per creare un controllo LinqDataSource che si connette ai dati da un database o da una raccolta dati, ad esempio un insieme. Nel markup è possibile specificare i criteri per la visualizzazione, il filtraggio, l'ordinamento e il raggruppamento dei dati. Quando l'origine dati è una tabella del database SQL, è anche possibile configurare un controllo LinqDataSource per aggiornare, inserire ed eliminare i dati. Non è necessario scrivere i comandi SQL per eseguire queste attività. La classe LinqDataSource fornisce un modello di eventi che consente di personalizzare il comportamento di visualizzazione e aggiornamento. Per ulteriori informazioni, vedere Cenni preliminari sul controllo server Web LinqDataSource.

Strumento di unione di ASP.NET

Lo strumento di unione di ASP.NET (Aspnet_merge.exe) consente di combinare e gestire assembly creati mediante lo strumento di precompilazione di ASP.NET (Aspnet_compiler.exe). In precedenza, veniva rilasciato come componente aggiuntivo per Visual Studio 2005. Tale strumento crea singoli assembly per il sito. È possibile creare un assembly per l'intero sito Web, per ogni cartella del sito, oppure soltanto per i file che costituiscono l'interfaccia utente del sito (pagine e controlli).

Nota:

Questa funzionalità non è disponibile in Visual Web Developer Express Edition.

Per ulteriori informazioni, vedere Strumento di unione di ASP.NET (Aspnet_merge.exe). Per ulteriori informazioni sullo strumento compilatore di ASP.NET , vedere Strumento per la compilazione di ASP.NET (Aspnet_compiler.exe).

Miglioramenti in Visual Web Developer

Nelle seguenti sezioni vengono fornite informazioni sui miglioramenti e le nuove funzionalità di Visual Studio 2008 e Visual Web Developer Express Edition.

Nuovi strumenti di progettazione CSS e visualizzazione Progettazione

La finestra di progettazione delle pagine Web consente ora di lavorare nella visualizzazione Progettazione, Origine o Suddivisa; quest'ultima visualizza contemporaneamente le prime due.

Visual Studio fornisce ora strumenti che semplificano l'utilizzo dei fogli di stile CSS. È possibile progettare il contenuto di layout e stile nella visualizzazione Progettazione utilizzando nuovi strumenti dell'interfaccia utente, ad esempio la finestra Proprietà CSS. È inoltre possibile modificare il posizionamento, la spaziatura interna e i margini direttamente nella visualizzazione Progettazione utilizzando gli strumenti di layout visivo WYSIWYG.

Per ulteriori informazioni, vedere i seguenti argomenti:

IntelliSense per JScript e ASP.NET AJAX

Visual Studio 2008 e Visual Web Developer Express Edition offrono ora IntelliSense notevolmente migliorato per la codifica in ECMAScript (JScript o JavaScript) e per la scrittura di script client per applicazioni Web di tipo AJAX che utilizzano la Microsoft AJAX Library. IntelliSense è disponibile per script client negli elementi script e per i file script JS a cui si fa riferimento. 

In IntelliSense vengono inoltre visualizzati i commenti del codice XML, utilizzati per descrivere il riepilogo, il parametro e i dettagli restituiti dello script client. ASP.NET AJAX utilizza anche i commenti del codice XML per fornire IntelliSense per i tipi e i membri ASP.NET AJAX. IntelliSense è supportato anche per riferimenti ai file di script esterni che utilizzano i commenti di codice XML.

Per ulteriori informazioni, vedere i seguenti argomenti:

Progetti di applicazioni Web

I progetti di applicazione Web, rilasciati precedentemente come componente aggiuntivo di Visual Studio 2005, sono ora integrati in Visual Studio e Visual Web Developer Express Edition. Utilizzando il modello di progetto di applicazione Web, è possibile compilare un sito Web in un unico assembly nella cartella Bin e definire in modo esplicito le risorse del progetto.

Il modello di progetto di applicazione Web utilizza la stessa semantica di progettazione e compilazione dei progetti Web in Visual Studio .NET 2003, semplificando la migrazione dei siti Web di Visual Studio .NET 2003 nella versione corrente di Visual Studio o Visual Web Developer Express Edition.

I progetti di applicazione Web non sostituiscono il tipo di progetto di sito Web introdotto in Visual Studio 2005. Al contrario, forniscono un altro modello di progetto per garantire più opzioni di distribuzione e gestione delle applicazioni Web.

Per ulteriori informazioni, vedere i seguenti argomenti:

Applicazioni Web multitargeting

Visual Studio consente ora di destinare un'applicazione Web a una versione specifica di .NET Framework. È possibile utilizzare un'istanza di Visual Studio per sviluppare applicazioni Web per .NET Framework versioni 2.0, 3.0 (Windows Vista) e 3.5. In Visual Web Developer Express Edition è possibile creare soltanto applicazioni destinate alla versione 3.5 di .NET Framework. Tuttavia, in seguito è possibile configurare .NET Framework in modo da essere destinato alle versioni 2.0, 3.0 e 3.5 modificando la relativa proprietà del progetto.

Per ulteriori informazioni, vedere i seguenti argomenti:

Finestra di progettazione e supporto IntelliSense per LINQ

Un nuovo insieme di funzionalità in Visual Studio 2008 supporta Language Integrated Query (LINQ) e migliora la gestione delle query nella sintassi dei linguaggi C# e Visual Basic. LINQ introduce modelli standard intuitivi per l'esecuzione di query e la trasformazione dei dati e può essere esteso per il supporto di qualsiasi tipo di origine dati. La finestra di progettazione fornisce una rappresentazione visiva di classi di dati che consente di creare e modificare rapidamente le classi che eseguono il mapping agli oggetti in un database. Il supporto IntelliSense fornisce informazioni per la sintassi del linguaggio LINQ e l'utilizzo del controllo LinqDataSource nella visualizzazione Origine. Per ulteriori informazioni, vedere Cenni preliminari sul controllo server Web LinqDataSource.

Supporto per la creazione e l'utilizzo di servizi WCF in un progetto Web

In Visual Studio è possibile aggiungere servizi Web ASP.NET (file ASMX) e servizi Web WCF (file SVC) a un progetto. In genere, le applicazioni client scritte in codice gestito accedono a questi servizi Web tramite una classe proxy. Ad esempio, queste applicazioni utilizzano la classe proxy generata da Visual Studio quando si utilizza la finestra di dialogo Aggiungi riferimento Web. Le applicazioni AJAX possono accedere ai servizi Web dal browser utilizzando le classi proxy generate automaticamente nello script client. Per ulteriori informazioni, vedere la classe Cenni preliminari sui servizi delle applicazioni ASP.NET.

Supporto per controlli Extender ASP.NET AJAX

I controlli Extender AJAX migliorano le funzionalità client dei controlli server Web standard nelle applicazioni Web ASP.NET. Per consentire agli utenti di sfruttare al meglio le applicazioni basate su Web, è possibile associare una o più estensioni ai controlli server Web quali TextBox, Button e Panel.

Visual Studiosupporta tutti i controlli Extender ASP.NET AJAX, inclusi i controlli creati dall'utente e i controlli aggiunti da altre origini, ad esempio ASP.NET AJAX Control Toolkit, disponibile nel sito Web di ASP.NET (informazioni in lingua inglese).

Nota:

ASP.NET AJAX Control Toolkit è una libreria supportata dalle community ma non da Microsoft.

Per ulteriori informazioni, vedere i seguenti argomenti:

Vedere anche

Concetti

Procedure dettagliate selezionate per ASP.NET

Novità di Visual Studio 2008

Cenni preliminari sui progetti di applicazione Web

Aggiunta di funzionalità AJAX e client

Aggiunta di funzionalità AJAX a controlli ASP.NET

Confronto tra Visual Studio e Visual Web Developer Express Edition

Altre risorse

Controlli server AJAX