Pagine Web è molto più spesso di oggetti.
La pagina Object
Avete già visto alcuni metodi oggetto pagina in uso:
@RenderPage("header.cshtml")
@RenderBody()
Nel capitolo precedente si è visto due proprietà oggetto pagina in uso (isPost, e richiesta):
If (IsPost) {
if (Request["Choice"] != null) {
Alcuni metodi oggetto pagina
Metodo | Descrizione |
---|---|
href | Costruisce un URL utilizzando i parametri specificati |
RenderBody() | Rende la porzione di una pagina di contenuto che non è all'interno di una sezione di nome (In layout pages) |
RenderPage( page ) | Rende il contenuto di una pagina all'interno di un'altra pagina |
RenderSection( section ) | Rende il contenuto di una sezione denominata (In layout pages) |
Write( object ) | Scrive l'oggetto come una stringa codificata in HTML |
WriteLiteral | Scrive un oggetto senza HTML-codifica prima. |
Alcune proprietà oggetto pagina
Proprietà | Descrizione |
---|---|
IsPost | Restituisce true se il metodo di trasferimento dati HTTP utilizzato dal client è una richiesta POST |
Layout | Ottiene o imposta il percorso di una pagina di layout |
Page | Fornisce l'accesso di proprietà simili ai dati condivisi tra le pagine e pagine di layout |
Request | Ottiene l'oggetto HttpRequest per la richiesta HTTP corrente |
Server | Ottiene l'oggetto HttpServerUtility che fornisce metodi di lavorazione web-page |
La pagina delle proprietà (of the Page Object)
La proprietà di pagina della pagina Oggetto, offre l'accesso alle proprietà simili ai dati condivisi tra le pagine e pagine di layout.
È possibile utilizzare (add) i propri oggetti dalla proprietà di pagina:
- Titolo di pagina
- Page.Version
- Page.anythingyoulike
La proprietà pagine è molto utile. Per esempio, permette di impostare il titolo della pagina nel file di contenuto, e utilizzarlo nel file di layout:
Home.cshtml
@{
Layout="~/Shared/Layout.cshtml";
Page.Title="Home Page"
}
<h1>Welcome to w3ii</h1>
<h2>Web Site Main Ingredients</h2>
<p>A Home Page (Default.cshtml)</p>
<p>A Layout File (Layout.cshtml)</p>
<p>A Style Sheet (Site.css)</p>
Layout.cshtml
<!DOCTYPE html>
<html>
<head>
<title> @Page.Title </title>
</head>
<body>
@RenderBody()
</body>
</html>