ASP.NET Web Pages - Layout strony

Poprzez Web Pages, łatwo można stworzyć strony internetowe o jednolitym layoutie.

Jednolity wygląd

W Internecie znajdziesz wiele stron internetowych o jednolitym wyglądzie:

  • Każda strona ma ten sam nagłówek
  • Każda strona ma tę samą stopkę
  • Każda strona ma tę samą stylizację i layout

Poprzez Web Pages, można efektywnie realizować te zadania. Możesz uzyskać powtarzalne bloki kodu (bloki zawartości), takie jak nagłówek i stopka, w oddzielnym pliku.

Możesz również zdefiniować spójny layout dla wszystkich stron, używając szablonów layout (plików layout).

Bloki zawartości

Wiele stron internetowych ma treści, które muszą być wyświetlane na każdej stronie (np. nagłówek i stopka).

Poprzez Web Pages, możesz używać @RenderPage() Metoda importowania zawartości z różnych plików.

Bloki zawartości (z innego pliku) mogą być umieszczone w dowolnym miejscu strony i mogą zawierać tekst, znaczniki i kod, jak w przypadku każdej zwykłej strony.

Użycie ogólnego nagłówka i stopki oszczędza dużo pracy. Nie musisz pisać tego samego zawartości na każdej stronie, a gdy zmienisz plik nagłówka lub stopki, zawartość zostanie zaktualizowana na wszystkich stronach.

W kodzie wygląda to tak:

Przykład

<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Web Pages</h1> 
<p>Questo è un paragrafo</p>
@RenderPage("footer.cshtml")
</body>
</html>

Uruchom przykład

Używanie stron layout

W poprzednich treściach zobaczyłeś, że odwoływanie się do tego samego zawartości w wielu stronach jest bardzo proste.

Innym sposobem stworzenia spójnego wyglądu jest użycie stron layout. Strony layout zawierają strukturę strony, a nie jej zawartość. Kiedy strona (strona zawartości) jest linkowana do strony layout, jest wyświetlana zgodnie z layoutem (szablonem).

Strony layout są podobne do zwykłych stron internetowych, ale w miejscu odwołania do stron zawartości będą wywoływane. @RenderBody() Metoda.

Każda strona zawartości musi zaczynać się od: Polecenie LayoutPoczątek.

W kodzie wygląda to tak:

Layout strony internetowej:

<html>
<body>
<p>To tekst.</p>
@RenderBody()
<p>© 2012 CodeW3C.com. Wszelkie prawa zastrzeżone.</p>
</body>
</html>

Każda strona:

@{Layout="Layout.cshtml";}
<h1>Witaj na CodeW3C.com</h1>
<p>
To tekst. To tekst. To tekst. To tekst. To tekst. To tekst. To tekst. To tekst.
To tekst. To tekst. To tekst. To tekst. To tekst. To tekst. To tekst. To tekst.
To tekst. To tekst. To tekst. To tekst. To tekst. To tekst. To tekst. To tekst.
</p>

Uruchom przykład

Nie powtarzaj się

Dzięki dwóm narzędziom ASP.NET, blokom treści i stronom layout, możesz ustawić jednolity wygląd aplikacji web.

Te narzędzia oszczędzą Ci mnóstwo pracy, ponieważ nie musisz powtarzać tych samych informacji na wszystkich stronach. Koncentrując znaczniki, style i kod, ułatwiasz zarządzanie i utrzymanie aplikacji web.

Prezentacja kodu

W ASP.NET, pliki z nazwą zaczynającą się od znaku podkreślenia nie mogą być przeglądane przez web.

Jeśli chcesz zabronić użytkownikom przeglądania bloków treści lub plików layout, zmień nazwę plików:

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

Ukrywanie wrażliwych informacji

W ASP.NET, powszechnym sposobem ukrycia wrażliwych informacji (hasła do bazy danych, hasła e-mail i tym podobne) jest przechowywanie tych informacji w oddzielnym pliku o nazwie "_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";
}