Come abbiamo accennato, la generazione dei menu e delle "molliche di pane" avviene automaticamente. Perché il meccanismo funzioni, bisogna però indicare al motore ASP.NET quali sono le pagine che compongono il sito e quali sono le relazioni tra loro. Dobbiamo cioè definire la mappa del sito.
Se navighiamo il sito vediamo che le pagine tra loro sono organizzate in modo gerarchico e che questa gerarchia viene evidenziata dalle breadcrumbs.
Figura 1. Gerarchia della navigazione
Questa mappa del sito, viene descritta nel file web.sitemap. Nella sitemap ogni pagina è un nodo. Ogni nodo ha associato un file con una pagina di contenuto (url) un nome (title), ma, cosa più importante, ogni nodo può contenere altri nodi, il che stablisce l'ordine gerarchico.
Contenuto del file "web.sitemap"
<?xml version="1.0" encoding="utf-8" ?>
<siteMap>
<siteMapNode title="Home" url="Default.aspx">
<siteMapNode title="Resume" url="Resume.aspx" />
<siteMapNode title="Links" url="Links.aspx" /> <!-- nodo finale -->
<siteMapNode title="Albums" url="Albums.aspx" > <!--inizio nodo "Albums"-->
<siteMapNode title="Photos" url="Photos.aspx" > <!--inizio nodo "Photos" -->
<siteMapNode title="Details" url="Details.aspx" /> <!-- nodo finale -->
</siteMapNode> <!-- fine nodo "Photos"-->
</siteMapNode> <!-- fine nodo "Albums"-->
<siteMapNode title="Register" url="Register.aspx" />
<siteMapNode title="Manage" url="Admin/Albums.aspx" >
<siteMapNode title="Photos" url="Admin/Photos.aspx" >
<siteMapNode title="Details" url="Admin/Details.aspx" />
</siteMapNode>
</siteMapNode>
</siteMapNode>
</siteMap>
Per modificare il menu, quindi, è sufficiente modificare il file della mappa del sito. Automaticamente verranno aggiornati tutti i contenuti. Supponiamo ad esempio di convertire tutti gli attributi title in italiano, all'interno del web.sitemap. Tornati sul sito troveremo tutte le voci di menu aggiornate.
Figura 2. Modifica alle voci di menu
Ci sono alcune voci della sitemap che non abbiamo commentato, si tratta delle pagine accessibili dall'amministrazione (il nodo "Manage"), che vedremo nelle prossime lezioni.
LINQ e la trappola della 'deferred execution'Una "trappola" in cui si può incappare utilizzando il risultato di... |
C#, le Custom Type ConversionConversioni personalizzate tra classi, creare metodi particolari per... |
Introduzione a Entity FrameworkIl framework ORM messo a disposizione da .NET |
Repeater: visualizzare un feed RSSUtilizzare il controllo XMLDataSource e sfruttare il metodo XPath()... |
Repeater, il server control "semplice"Cos'è e come funziona il controllo Repeater |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Guida Visual Studio 2010L'ambiente di sviluppo di riferimento per sviluppare applicazioni su... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Corso Progettazione database11 Maggio 2012 a Milano |
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |