Cette section présente l'utilisation de
Pages Web ASP.NET pour obtenir une mise en page unifiée.Avec les pages Web, il est facile de créer un site Web présenté de manière cohérente.
Sur Internet, vous trouverez de nombreux sites Web qui partagent une apparence cohérente :
Chaque page a le même en-tête
Chaque page a le même bas
Chaque page a le même style et la même mise en page
Avec les pages Web, vous pouvez le faire de manière très efficace. Vous pouvez écrire des blocs de contenu réutilisés (tels que des en-têtes et des pieds de page) dans un fichier séparé.
Vous pouvez également utiliser des modèles de mise en page (fichiers de mise en page) pour définir une mise en page cohérente pour toutes les pages de votre site.
De nombreux sites Web ont du contenu affiché sur chaque page du site (comme l'en-tête et le pied de page).
Avec les pages Web, vous pouvez utiliser la méthode @RenderPage() pour importer du contenu à partir de différents fichiers.
Les blocs de contenu (provenant d'un autre fichier) peuvent être importés n'importe où dans la page Web. Les blocs de contenu peuvent contenir du texte, du balisage et du code, comme n'importe quelle page Web normale.
L'écriture d'en-têtes et de pieds de page communs dans des fichiers séparés vous fera économiser beaucoup de travail. Vous n'êtes pas obligé d'écrire le même contenu sur chaque page. Lorsque le contenu change, il vous suffit de modifier le fichier d'en-tête ou de bas, et vous verrez que le contenu correspondant de chaque page du site a été mis à jour.
Ce qui suit montre comment cela apparaît dans le code :
<html> <corps> @RenderPage("header.cshtml") <h1>Bonjour les pages Web</h1> <p>Ceci est un paragraphe</p> @RenderPage("footer.cshtml") </body> </html>
Dans la section précédente, vous avez vu qu’il est très simple d’afficher le même contenu sur plusieurs pages Web.
Une autre façon de créer une apparence cohérente consiste à utiliser des pages de mise en page. Une page de mise en page contient la structure de la page Web, pas le contenu. Lorsqu'une page Web (page de contenu) est liée à une page de mise en page, elle s'affiche selon la structure de la page de mise en page (modèle).
La méthode @RenderBody() est utilisée pour intégrer la page de contenu dans la page de mise en page. À part cela, elle n'est pas différente d'une page Web normale.
Chaque page de contenu doit commencer par une directive de mise en page .
Ce qui suit montre comment cela apparaît dans le code :
<html> <body> <p>Ceci est le texte d'en-tête</p> @RenderBody() <p>© 2012 W3CSchool. Tous droits réservés.</p> </body> </html>
@{Layout="Layout.cshtml";} <h1>Bienvenue sur w3cschool.cn</h1> <p> Lorem ipsum dolor sit amet, consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </p>
Grâce aux deux outils ASP.NET Blocs de contenu et Pages de mise en page, vous pouvez donner à vos applications Web une apparence cohérente.
Ces deux outils peuvent vous épargner beaucoup de travail en n’ayant pas à répéter les mêmes informations sur chaque page. Le balisage, les styles et le code centralisés facilitent la gestion et la maintenance de vos applications Web.
Dans ASP.NET, les noms de fichiers commencent par un trait de soulignement pour empêcher la visualisation de ces fichiers en ligne.
Si vous ne souhaitez pas que vos blocs de contenu ou vos pages de mise en page soient visibles par vos utilisateurs, vous pouvez renommer ces fichiers :
_header.cshtm
_footer.cshtml
_Layout.cshtml
Dans ASP.NET, le moyen le plus courant de masquer des informations sensibles (mots de passe de base de données, mots de passe de messagerie, etc.) consiste à enregistrer ces informations dans un fichier séparé appelé « _AppStart ».
@{ WebMail.SmtpServer = "mailserver.example.com"; WebMail.EnableSsl = true; WebMail.UserName = "[email protected]"; [email protected]"; }
Ce qui précède concerne le contenu de la mise en page des pages Web ASP.NET. Si vous souhaitez une mise en page Web plus pratique et unifiée, vous pouvez essayer les pages Web ASP.NET pour la mise en page.