ASP.NET Web Pages - Pagina-lay-out

Met Web Pages is het gemakkelijk om websites met een consistente lay-out te creëren.

Consistente uitstraling

Op het internet vindt u veel websites met een uniforme uitstraling:

  • Elke pagina heeft dezelfde kop
  • Elke pagina heeft dezelfde voettekst
  • Elke pagina heeft dezelfde stijl en lay-out

Met Web Pages kunt u dit efficiënt realiseren. U krijgt herbruikbare codeblokken (inhoudsblokken), zoals koppen en voetteksten, in afzonderlijke bestanden.

U kunt ook een consistent lay-out voor alle pagina's definiëren door gebruik te maken van lay-outtemplates (lay-outbestanden).

Inhoudsblokken

Veel websites hebben inhoud nodig die op elke pagina moet worden weergegeven (bijvoorbeeld koppen en voetteksten).

Met Web Pages kunt u @RenderPage() Methoden importeren inhoud van verschillende bestanden.

Inhoudsblokken (uit een ander bestand) kunnen op elke gewenste plek in de ingevoerde webpagina worden ingevoegd en kunnen tekst, tags en code bevatten, net als elke gewone webpagina.

Het gebruik van algemene koppen en voetteksten bespaart veel werk. U hoeft niet dezelfde inhoud op elke pagina te schrijven, en wanneer u de koppen of voettekstenbestanden verandert, wordt de inhoud op alle pagina's bijgewerkt.

In de code ziet het er zo uit:

Voorbeeld

<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Web Pagina's</h1> 
<p>Dit is een paragraaf</p>
@RenderPage("footer.cshtml")
</body>
</html>

Run instance

Gebruik lay-outpagina's

In de eerdere inhoud hebt u gezien hoe eenvoudig het is om hetzelfde inhoud te citeren in meerdere webpagina's.

Een ander manier om een consistent uiterlijk te creëren, is door gebruik te maken van lay-outpagina's. Lay-outpagina's bevatten de structuur van de webpagina, niet de inhoud. Wanneer een webpagina (inhoudspagina) wordt gelinkt aan een lay-outpagina, wordt deze weergegeven volgens de lay-outpagina (sjabloon).

Lay-outpagina's zijn vergelijkbaar met gewone webpagina's, maar roepen op de plek waar de inhoudspagina's worden geciteerd. @RenderBody() Methode.

Elke inhoudspagina moet beginnen met Lay-out-instructieAan het begin.

In de code ziet het er zo uit:

Lay-out van webpagina's:

<html>
<body>
<p>This is text.</p>
@RenderBody()
<p>© 2012 CodeW3C.com. All rights reserved.</p>
</body>
</html>

Any web page:

@{Layout="Layout.cshtml";}
<h1>Welcome to CodeW3C.com</h1>
<p>
This is text. This is text. This is text. This is text. This is text. This is text. This is text. This is text.
This is text. This is text. This is text. This is text. This is text. This is text. This is text. This is text.
This is text. This is text. This is text. This is text. This is text. This is text. This is text. This is text.
</p>

Run instance

Do not repeat yourself

With two ASP.NET tools, content blocks and layout pages, you can set a consistent look for web applications.

These tools will save you a lot of work because you do not have to repeat the same information on all pages. Bring tags, styles, and code together to make web applications easier to manage and maintain.

Prevent code leakage

In ASP.NET, files that start with an underscore cannot be browsed via web.

If you want to prevent users from viewing content blocks or layout files, rename the files:

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

Hide sensitive information

In ASP.NET, a common method to hide sensitive information (such as database passwords, email passwords, etc.) is to store this information in a separate file named "_AppStart".

_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";
}