Páginas web ASP.NET - Diseño de página
Con Web Pages es fácil crear un sitio web con un diseño consistente.
Una mirada consistente
En Internet, descubrirá muchos sitios web con un aspecto y una sensación coherentes:
- Todas las páginas tienen el mismo encabezado.
- Todas las páginas tienen el mismo pie de página.
- Cada página tiene el mismo estilo y diseño.
Con las páginas web esto se puede hacer de manera muy eficiente. Puede tener bloques de contenido reutilizables (bloques de contenido), como encabezados y pies de página, en archivos separados.
También puede definir un diseño consistente para todas sus páginas, utilizando una plantilla de diseño (archivo de diseño).
Bloques de contenido
Muchos sitios web tienen contenido que se muestra en cada página (como encabezados y pies de página).
Con las páginas web, puede usar el método @RenderPage() para importar contenido de archivos separados.
El bloque de contenido (de otro archivo) se puede importar en cualquier lugar de una página web y puede contener texto, marcado y código, como cualquier página web normal.
Usando encabezados y pies de página comunes como ejemplo, esto le ahorra mucho trabajo. No tiene que escribir el mismo contenido en cada página, y cuando cambia los archivos de encabezado o pie de página, el contenido se actualiza en todas sus páginas.
Así es como se ve en el código:
Ejemplo
<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Web Pages</h1>
<p>This is a paragraph</p>
@RenderPage("footer.cshtml")
</body>
</html>
Uso de una página de diseño
En la sección anterior, viste que incluir el mismo contenido en muchas páginas web es fácil.
Otro enfoque para crear una apariencia consistente es usar una página de diseño. Una página de diseño contiene la estructura, pero no el contenido, de una página web. Cuando una página web (página de contenido) está vinculada a una página de diseño, se mostrará de acuerdo con la página de diseño (plantilla).
La página de diseño es como una página web normal, excepto por una llamada al método @RenderBody() donde se incluirá la página de contenido.
Cada página de contenido debe comenzar con una directiva de diseño .
Así es como se ve en el código:
Página de diseño:
<html>
<body>
<p>This is header text</p>
@RenderBody()
<p>© 2014 W3Schools. All rights reserved.</p>
</body>
</html>
Cualquier Pagina Web:
@{Layout="Layout.cshtml";}
<h1>Welcome to W3Schools</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit,sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laborisnisi ut aliquip ex ea commodo consequat.
</p>
SECO - No te repitas
Con dos herramientas ASP.NET, bloques de contenido y páginas de diseño, puede dar a sus aplicaciones web una apariencia uniforme.
Estas herramientas también te ahorran mucho trabajo, ya que no tienes que repetir la misma información en todas las páginas. La centralización del marcado, el estilo y el código hace que las aplicaciones web sean mucho más manejables y fáciles de mantener.
Evitar que los archivos sean examinados
Con ASP.NET, los archivos con un nombre que comienza con un guión bajo no se pueden explorar desde la web.
Si desea evitar que sus usuarios vean sus bloques de contenido o archivos de diseño, cambie el nombre de los archivos a:
_header.cshtml
_footer.cshtml
_Diseño.cshtml
Ocultar información confidencial
Con ASP.NET, la forma común de ocultar información confidencial (contraseñas de bases de datos, contraseñas de correo electrónico, etc.) es mantener la información en un archivo separado llamado "_AppStart".
_AppStart.cshtml
@{
WebMail.SmtpServer = "mailserver.example.com";
WebMail.EnableSsl = true;
WebMail.UserName = "[email protected]";
WebMail.Password = "your-password";
WebMail.From = "[email protected]";
}