ASP.NET-webpagina's - Objecten
Webpagina's gaan vaak over objecten.
Het pagina-object
Je hebt al een aantal Page Object-methoden in gebruik gezien:
@RenderPage("header.cshtml")
@RenderBody()
In het vorige hoofdstuk zag je dat er twee Page Object-eigenschappen werden gebruikt (IsPost en Request):
If (IsPost) {
if (Request["Choice"] != null) {
Sommige methoden voor pagina-objecten
Method | Description |
---|---|
href | Builds a URL using the specified parameters |
RenderBody() | Renders the portion of a content page that is not within a named section (In layout pages) |
RenderPage(page) | Renders the content of one page within another page |
RenderSection(section) | Renders the content of a named section (In layout pages) |
Write(object) | Writes the object as an HTML-encoded string |
WriteLiteral | Writes an object without HTML-encoding it first. |
Sommige eigenschappen van pagina-objecten
Property | Description |
---|---|
IsPost | Returns true if the HTTP data transfer method used by the client is a POST request |
Layout | Gets or sets the path of a layout page |
Page | Provides property-like access to data shared between pages and layout pages |
Request | Gets the HttpRequest object for the current HTTP request |
Server | Gets the HttpServerUtility object that provides web-page processing methods |
De pagina-eigenschap (van het pagina-object)
De pagina-eigenschap van het pagina-object biedt eigenschapachtige toegang tot gegevens die worden gedeeld tussen pagina's en lay-outpagina's.
U kunt uw eigen eigenschappen gebruiken (toevoegen) aan de pagina-eigenschap:
- Pagina titel
- Pagina.Versie
- Page.alles wat je leuk vindt
De pagina-eigenschap is erg handig. Het maakt het bijvoorbeeld mogelijk om de paginatitel in inhoudsbestanden in te stellen en te gebruiken in het lay-outbestand:
Startpagina.cshtml
@{
Layout="~/Shared/Layout.cshtml";
Page.Title="Home Page"
}
<h1>Welcome to W3Schools</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>
Lay-out.cshtml
<!DOCTYPE html>
<html>
<head>
<title>@Page.Title</title>
</head>
<body>
@RenderBody()
</body>
</html>