2010-10-28 4 views
0

Existe-t-il un moyen d'accéder par programme et de modifier la section <head> de la page dans ASP.NET MVC? Je dois mettre à jour les balises <meta> de la page en fonction des données affichées par l'utilisateur sur une page donnée.Comment modifier les éléments <head> par programmation?

+0

Utilisez la suggestion de la combinaison de Darin et Jakub pour obtenir le meilleur résultat à savoir. Créez le conteneur de contenu sur votre page maître et utilisez une approche BaseViewModel. le résultat ' ' – Ahmad

Répondre

1

Vous pouvez utiliser un espace réservé de contenu dans la page principale qui vous substituez dans chaque vue:

<head> 
    <title> 
     <asp:ContentPlaceHolder ID="TitleContent" runat="server" /> 
    </title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <asp:ContentPlaceHolder ID="Metas" runat="server" /> 
... 

et dans la vue:

<asp:Content ID="IndexMetas" ContentPlaceHolderID="Metas" runat="server"> 
    <meta name="keywords" content="some keywords specific to the view" /> 
</asp:Content> 
1

Essayez:

<meta name="description" content="<%: Model.Meta %>" /> 
+0

Juste pour noter, en utilisant la deuxième approche, vous aurez probablement besoin de créer un BaseViewModel pour l'utiliser plus efficacement. – Ahmad

+0

HttpContext.Current.Response.Headers renvoie en fait une collection des en-têtes http de la réponse. Cela n'a rien à voir avec l'élément html . –

Questions connexes