代码之家  ›  专栏  ›  技术社区  ›  DaveDev

如何以编程方式修改<head>元素?

  •  0
  • DaveDev  · 技术社区  · 14 年前

    是否有方法以编程方式访问和修改 <head> ASP.NET MVC中的页面部分?我需要更新页面的 <meta> 标签取决于用户在任何给定页面上查看的数据。

    3 回复  |  直到 14 年前
        1
  •  1
  •   Darin Dimitrov    14 年前

    您可以在母版页中使用内容占位符,并在每个视图中重写该内容占位符:

    <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" />
    ...
    

    在视图中:

    <asp:Content ID="IndexMetas" ContentPlaceHolderID="Metas" runat="server">
        <meta name="keywords" content="some keywords specific to the view" />
    </asp:Content>
    
        2
  •  1
  •   Jakub Konecki    14 年前

    尝试:

    <meta name="description" content="<%: Model.Meta %>" />
    
        3
  •  1
  •   Branislav Abadjimarinov Ivan Choo    14 年前

    在ASP.NET 4.0中,有几个新的页属性,您可以使用这些属性直接设置元标记,如下所示:

    Page.MetaKeywords = "asp.net,c#"; 
    Page.MetaDescription = "This is my stackoverflow post";
    

    你可以在这里了解更多 http://weblogs.asp.net/dotnetstories/archive/2010/03/23/asp-net-4-0-meta-tags-and-search-engine-optimisation.aspx