ASP.NET-Webseiten - Objekte
Bei Webseiten geht es oft um Objekte.
Das Seitenobjekt
Sie haben bereits einige Page Object-Methoden im Einsatz gesehen:
@RenderPage("header.cshtml")
@RenderBody()
Im vorherigen Kapitel haben Sie gesehen, dass zwei Seitenobjekteigenschaften verwendet werden (IsPost und Request):
If (IsPost) {
if (Request["Choice"] != null) {
Einige Seitenobjektmethoden
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. |
Einige Eigenschaften von Seitenobjekten
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 |
Die Page-Eigenschaft (des Page-Objekts)
Die Page-Eigenschaft des Page-Objekts bietet eigenschaftsähnlichen Zugriff auf Daten, die von Seiten und Layoutseiten gemeinsam genutzt werden.
Sie können Ihre eigenen Eigenschaften zur Seiteneigenschaft verwenden (hinzufügen):
- Seitentitel
- Seite.Version
- Seite.beliebig
Die Seiten-Eigenschaft ist sehr hilfreich. So ist es beispielsweise möglich, den Seitentitel in Inhaltsdateien festzulegen und in der Layoutdatei zu verwenden:
Startseite.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>
Layout.cshtml
<!DOCTYPE html>
<html>
<head>
<title>@Page.Title</title>
</head>
<body>
@RenderBody()
</body>
</html>