如何向ASP.Net内容页面添加元标记

| 我有几个内容页面与一个母版页面无关。我需要在其中一个内容页面上添加一个刷新元标记,但是我看不到在哪里可以执行此操作。 任何帮助将非常感激。     
已邀请:
        尚未尝试通过刷新进行此操作,但通常可以添加如下这样的元标记:
   var keywords = new HtmlMeta { Name = \"keywords\", Content = \"one,two,three\" };
                Header.Controls.Add(keywords);
更新:这是可能的。检查里克斯特拉尔 http://www.west-wind.com/weblog/posts/2006/Aug/04/No-more-Meta-Refresh-Tags     
        本页解释了新功能:ASP.Net 4向页面添加了2个新的与Meta标签相关的属性。它们可用于设置关键字和描述的元标记。 您可以在后面的代码中设置它们:
Page.MetaKeywords = \"keyword1, keyword2, keyword3\";
Page.MetaDescription = \"Example of new meta tag support in ASP.Net 4\";
您也可以在@Page指令中进行设置:
<%@ Page Language=\"C#\" AutoEventWireup=\"true\"
MetaKeywords=\"keyword1, keyword2, keyword3\"
MetaDescription=\"Example of new meta tag support in ASP.Net 4\"
CodeFile=\"Default.aspx.cs\" Inherits=\"_Default\" %>
这两种方法的输出都会使html类似于以下内容:
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
    <title>
        ASP.NET 4 Meta Tag Support
    </title>
    <meta name=\"description\" content=\"Example of new meta tag support in ASP.Net 4\" />
    <meta name=\"keywords\" content=\"keyword1, keyword2, keyword3\" />
</head>
<body>
</body>
</html>
    
        
protected void Page_Load(object sender, EventArgs e)
{
  Page.Title          = \"Title of page\";
  HtmlMeta tag        = new HtmlMeta();
  tag.Name            = \"description\";
  tag.Content         = \"description of page\";
  Header.Controls.Add(tag);
  HtmlMeta tagKeyword = new HtmlMeta();
  tagKeyword.Name     = \"keywords\";
  tagKeyword.Content  = \"keywords of page\";
  Header.Controls.Add(tagKeyword );
}
(来源网址)     
        您可以在html标题的母版页上添加内容占位符。然后,您可以在特定内容页面的此内容部分添加内容,并将其输出到页面标题。     
        在设计器页面中添加以下代码
    <meta id=\"metaDescription\" runat=\"server\" name=\"Description\" />
现在将以下代码添加到您的.cs页面
    Page.MetaKeywords = \"keyword1, keyword2, keyword3\";
    Page.MetaDescription = \"Example of new meta tag\";
    
        我发现做到这一点的一种方法(这里没有列出)是拥有一个Literal并用所需的任何元标记填充它。就我而言,我需要在没有母版页的情况下使用它,以使Facebook识别缩略图,标题和描述:
<head runat=\"server\">
    <asp:Literal runat=\"server\" ID=\"litMeta\" />
...
</head>
代码背后:
var img = \"<meta property=\\\"og:image\\\" content=\\\"thumbnail.jpg\\\" />\";
var title = \"<meta property=\\\"og:title\\\" content=\\\"Title\\\" />\";
var desc = \"<meta property=\\\"og:description\\\" content=\\\"Description\\\" />\";
litMeta.Text = img + title + desc;
    

要回复问题请先登录注册