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>