ASP.NET Web Pages - sidlayout

Genom Web Pages är det enkelt att skapa webbplatser med en enhetlig layout.

En enhetlig utseende

På Internet hittar du många webbplatser med en enhetlig utseende:

  • Varje sida har samma rubrik
  • Varje sida har samma fot
  • Varje sida har samma stil och layout

Genom Web Pages kan du effektivt genomföra detta. Du kan få återanvändbara kodblock (innehållsblock), som rubriker och fötter, i separata filer.

Du kan också definiera en enhetlig layout för alla sidor genom att använda layoutmallar (layoutfiler).

Innehållsblock

Många webbplatser har innehåll som behöver visas på varje sida (t.ex. rubriker och fötter).

Genom Web Pages kan du använda @RenderPage() Metoder för att importera innehåll från olika filer.

Innehållsblock (från en annan fil) kan placeras i vilket ställe som helst på en webbsida och kan innehålla text, taggar och kod, precis som på en vanlig webbsida.

Att använda allmänna rubriker och fötter sparar mycket arbete. Du behöver inte skriva samma innehåll på varje sida, och när du ändrar rubrik- eller fötternas filer uppdateras innehållet på alla sidor.

Detta ser ut så i koden:

Exempel

<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Web Pages</h1> 
<p>Detta är en stycke</p>
@RenderPage("footer.cshtml")
</body>
</html>

Kör exempel

Använd layoutsidor

I tidigare innehåll har du sett att det är enkelt att hänvisa till samma innehåll på flera webbsidor.

Ett annat sätt att skapa en enhetlig utseende är att använda layoutsidor. Layoutsidor innehåller webbsidans struktur, inte innehållet. När en webbsida (innehållssida) länkar till en layoutsida kommer den att visa sig enligt layoutsidan (mönster).

Layoutsidan liknar en vanlig webbsida, men anropar platsen för innehållssidan när den hänvisas till. @RenderBody() Metod.

Varje innehållssida måste börja med Layout-instruktionerInledning.

Detta ser ut så i koden:

Layout webbsidor:

<html>
<body>
<p>Detta är text.</p>
@RenderBody()
<p>© 2012 CodeW3C.com. Alla rättigheter förbehållna.</p>
</body>
</html>

Valfri webbsida:

@{Layout="Layout.cshtml";}
<h1>Välkommen till CodeW3C.com</h1>
<p>
Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text.
Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text.
Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text. Detta är text.
</p>

Kör exempel

Undvik att upprepa dig själv

Genom två ASP.NET-verktyg, innehållsblock och layoutsidor, kan du sätta en enhetlig utseende för webbapplikationer.

Dessa verktyg kommer att spara dig mycket arbete eftersom du inte behöver upprepa samma information på alla sidor. Koncentrera märken, stilar och kod, vilket gör att webbapplikationer blir lättare att hantera och underhålla.

Förhindra kodläcka

I ASP.NET kan filer som börjar med understreck inte bläddras via webben.

Om du vill förbjuda användare att se innehållsblock eller layoutfiler, byt namn på filerna:

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

Dölj känslig information

I ASP.NET är en vanlig metod att dölja känslig information (databaslösenord, e-postlösenord osv.) att lagra denna information i en separat fil med namnet "_AppStart".

_AppStart.cshtml

@{
WebMail.SmtpServer = "mailserver.exempel.com";
WebMail.EnableSsl = true;
WebMail.UserName = "användarnamn@exempel.com";
WebMail.Password = "ditt-lösenord";
WebMail.From = "ditt-namn-här@exempel.com";
}