Pages Web ASP.NET - Objets


 Les pages Web concernent souvent des objets.


L'objet page

Vous avez déjà vu certaines méthodes Page Object utilisées :

@RenderPage("header.cshtml")

@RenderBody()

Dans le chapitre précédent, vous avez vu deux propriétés d'objet de page utilisées (IsPost et Request) :

If (IsPost) {

if (Request["Choice"] != null) {

Certaines méthodes d'objet de page

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.


Certaines propriétés d'objet de page

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

La propriété Page (de l'objet Page)

La propriété Page de l'objet Page fournit un accès de type propriété aux données partagées entre les pages et les pages de mise en page.

Vous pouvez utiliser (ajouter) vos propres propriétés à la propriété Page :

  • Titre de la page
  • Page.Version
  • Page.quelquechosequevousaimez

La propriété pages est très utile. Par exemple, il permet de définir le titre de la page dans les fichiers de contenu et de l'utiliser dans le fichier de mise en page :

Accueil.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>

Mise en page.cshtml

<!DOCTYPE html>
<html>
<head>
<title>@Page.Title</title>
</head>
<body>
@RenderBody()
</body>
</html>