ASP.NET Web Pages - Seitenlayout

Mit Web Pages ist es einfach, Websites mit einheitlichem Layout zu erstellen.

Einheitliches Erscheinungsbild

Im Internet finden Sie viele Websites mit einheitlichem Erscheinungsbild:

  • Jede Seite hat den gleichen Kopf
  • Jede Seite hat den gleichen Fuß
  • Jede Seite hat das gleiche Design und Layout

Mit Web Pages können diese Dinge effizient umgesetzt werden. Sie können wiederverwendbare Code-Blöcke (Inhaltsblöcke) wie Kopf und Fuß in separaten Dateien erhalten.

Sie können auch für alle Seiten ein einheitliches Layout definieren, indem Sie Layout-Vorlagen (Layout-Dateien) verwenden.

Inhaltsblöcke

Viele Websites haben Inhalte, die auf jeder Seite angezeigt werden müssen (z.B. Kopf und Fuß).

Mit Web Pages können Sie @RenderPage() Methoden importieren Inhalte aus verschiedenen Dateien.

Inhaltsblöcke (aus einer anderen Datei) können an beliebigen Stellen in der Eingabeseite platziert werden und können Text, Tags und Code enthalten, genau wie jede normale Webseite.

Die Verwendung eines allgemeinen Kopfes und Fußes spart viel Arbeit. Sie müssen nicht denselben Inhalt auf jeder Seite schreiben, und wenn Sie die Kopf- oder Fußdatei ändern, wird der Inhalt auf allen Seiten aktualisiert.

In der Code-Syntax:

Beispiel

<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Webseiten</h1> 
<p>Dies ist ein Absatz</p>
@RenderPage("footer.cshtml")
</body>
</html>

Führen Sie den Beispielbetrieb aus

Verwenden Sie Layout-Seiten

In den vorherigen Inhalten haben Sie gesehen, dass das Verweis auf dasselbe Inhaltsmaterial in mehreren Webseiten einfach ist.

Eine andere Methode zur Erstellung eines einheitlichen Erscheinungsbildes ist die Verwendung von Layout-Seiten. Layout-Seiten enthalten die Struktur der Webseite, nicht den Inhalt. Wenn eine Webseite (Inhaltsseite) auf eine Layout-Seite verlinkt wird, wird sie basierend auf der Layout-Seite (Vorlage) angezeigt.

Layout-Seiten ähneln normalen Webseiten, aber sie rufen an der Stelle des Verweises auf die Inhaltsseiten auf. @RenderBody() Methode.

Jede Inhaltsseite muss mit Layout-AnweisungAnfang.

In der Code-Syntax:

Layout der Webseite:

<html>
<body>
<p Dies ist Text.</p>
@RenderBody()
<p>© 2012 CodeW3C.com. Alle Rechte vorbehalten.</p>
</body>
</html>

Jegliche Webseite:

@{Layout="Layout.cshtml";}
<h1>Willkommen bei CodeW3C.com</h1>
<p>
Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text.
Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text.
Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text. Dies ist Text.
</p>

Führen Sie den Beispielbetrieb aus

Wiederholen Sie sich nicht selbst

Mit zwei ASP.NET-Tools, dem Inhaltsblock und der Layoutseite, können Sie für Web-Anwendungen ein einheitliches Erscheinungsbild einrichten.

Diese Tools sparen Ihnen viel Arbeit, da Sie nicht die gleichen Informationen auf allen Seiten wiederholen müssen. Konzentrieren Sie Markierungen, Stile und Code, um Web-Anwendungen besser zu verwalten und zu warten.

Verhindern Sie die Code-Veröffentlichung

In ASP.NET können Dateien, die mit einem Unterstrich beginnen, nicht über das Web angezeigt werden.

Wenn Sie möchten, dass Benutzer Inhalteblöcke oder Layoutdateien nicht anzeigen können, benennen Sie die Dateien neu um:

  • _header.cshtm
  • _footer.cshtml
  • _Layout.cshtml

Sensible Informationen verbergen

In ASP.NET ist eine gängige Methode, sensible Informationen (Datenbankpasswörter, E-Mail-Passwörter usw.) zu verbergen, darin, diese Informationen in einer Datei mit dem Namen "_AppStart" zu speichern.

_AppStart.cshtml

@{
WebMail.SmtpServer = "mailserver.example.com";
WebMail.EnableSsl = true;
WebMail.UserName = "username@example.com";
WebMail.Password = "your-password";
WebMail.From = "your-name-here@example.com";
}