Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Viste e View engine

L'implementazione delle View in ASP.NET MVC e i View engine dispobibili
L'implementazione delle View in ASP.NET MVC e i View engine dispobibili
Link copiato negli appunti

Le view (viste) nel paradigma MVC, servono alla realizzazione dell'aspetto dell'applicazione e dell'interfaccia utente. Per questo motivo il codice lato server che troviamo nelle viste serve esclusivamente alla costruzione dell'HTML da inviare al browser: l'elaborazione dei dati è gestita, come abbiamo visto, da controller e model.

Come per controller ed il model, anche per le viste esiste una cartella dedicata nella struttura del progetto, chiamata Views:

Figura 16. Struttura delle cartelle per le viste
Struttura delle cartelle per le viste

Le viste presentano tuttavia una struttura più complessa. All'interno di Views sono presenti altre cartelle, una per ogni controller dell'applicazione. Avremo quindi la cartella Views/Home per le viste relative al controller HomeController, la cartella Views/Gallery per GalleryController e così via.

Merita un discorso a parte la cartella Views/Shared che contiene viste, master page ed in generale ogni altro componente condiviso da più controller. È importante sottolineare che questa cartella (e più in generale tutte le cartelle destinate alle viste) non dovrà contenere altri files, come fogli di stile ed immagini, che andranno memorizzati nell'apposita cartella Content del progetto.

Per ogni richiesta ricevuta ed elaborata dall'azione di un controller, ASP.Net MVC avrà quindi bisogno anche di cercare ed eseguire la vista corrispondente. Il meccanismo che si occupa della ricerca e dell'esecuzione di una vista è chiamato View Engine. ASP.Net MVC ha un solo view engine predefinito che prende origine dal classico motore WebForm ed utilizza comuni file con estensione .aspx ed .ascx (visibili ad esempio nell'immagine precedente).

Tuttavia, come avviene per molte altre parti del framework, anche per le viste ASP.Net MVC propone un approccio fortemente modulare permettendo di sostituire il view engine predefinito con un'altro, rendendo quindi possibile l'utilizzo di altre tecnologie per scrivere le nostre view. Alcuni dei view engine alternativi più apprezzati sono NHaml, basato sul view engine Haml di Ruby on Rails, Brail, basato sull'omonimo motore del framework MonoRail, e Spark, un view engine che fonde nella stessa sintassi HTML e costrutti propri dei linguaggi di programmazione.

Un'analisi approfondita dell'implementazione dei view engine alternativi all'interno di MVC esula dagli scopi di questa guida. È possibile trovare maggiori informazioni nell'articolo: Spark, un View Engine alternativo per Asp.Net MVC.

Ti consigliamo anche