Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicit� Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Una panoramica sull'uso di ASP.NET MVC Razor (2/2)
Scritto da Alessandro Piccarolo il 02-02-2011 ore 12:04
Intel System Studio
Al fine di facilitare ladozione di questo nuovo view engine, molti dei concetti chiave di ASPX sono stati trasferiti in Razor. Tra questi concetti troviamo, ad esempio, le Layout page, che rappresentano lequivalente delle master pages. Il template del layout di default utilizzato al momento della creazione di una nuova applicazione MVC3 definito in /Views/Shared/_Layout.cshtml, ma sempre possibile creare delle pagine di layout addizionali e referenziarle allinterno della propria applicazione, mediante aggiunta delle seguenti istruzioni nelle viste apposite:
  1. @{
  2.   Page.Title = "Titolo della pagina";
  3.   Layout = "~/Views/Shared/MyCustomLayout.cshtml";
  4. }
Allinterno della pagina di layout, in particolare, listruzione @RenderBody() permette di definire il punto in cui la pagina che utilizza questo specifico layout deve eseguire il rendering del proprio contenuto. Listruzione @RenderSection(), infine, consente di definire allinterno della pagina di layout delle sezioni utente, eventualmente rese obbligatorie mediante utilizzo dellattributo required:
  1. @RenderSection("RazorIntroSection", required:true)
Per referenziare allinterno di una vista Razor i riferimenti URL e i file di contenuto, si possono utilizzare, rispettivamente, le funzioni @Url.Content e @Url.Action, che ricevono come parametro il percorso del file desiderato, preceduto dal carattere tilde (~) per identificare la radice virtuale del proprio sito:
  1. <a href="@Url.Content("~/Content/Images/Vacanze.png")">Album delle vacanze!</a>
Infine, allinizio di una pagina Razor possibile definire il tipo @model, il che consente alla tecnologia IntelliSense di lavorare correttamente in tutta la pagina (facilitando in tal modo il lavoro dello sviluppatore) e di attivare unaccurata validazione di tutta la vista a compile-time. Per passare un model cos definito dal controller alla vista, sufficiente restituire il model stesso come parametro della funzione View:
  1. List<string> MyList = new List<string>(); // Model
  2. MyList.Add("Hello");
  3. MyList.Add("How");
  4. MyList.Add("Are");
  5. MyList.Add("You?");
  6. return View(MyList);
Si noti come si possa passare dal controller alla vista un qualunque tipo di oggetto, compresi quelli non serializzabili. Gli esempi riportati in questo articolo hanno lo scopo di rappresentare unintroduzione allutilizzo di Razor e alle sue potenzialit per la definizione di viste nellambiente .NET. Per ulteriori approfondimenti in merito a questo argomento si pu fare riferimento a un articolo pubblicato su CodeGuru.
Precedente: Usare Kinect sul proprio computer: configurare NITE e OpenNI
Successiva: Le novit di Android 3.0 Honeycomb
Copyright Programmazione.it™ 1999-2015. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.22 secondi.