2011-06-01 108 views

回答

18

沒有和刷新嘗試這樣做,但一般可以加元標記是這樣的:

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

+1

我使用的解決方案,你的鏈接裏克斯特拉斯博客;它工作得很好。非常感謝。 – doogdeb 2011-06-01 10:08:02

+0

我試着按照上面的方法做如下操作:if(!IsPostBack) { // Meta Tags。 var metaTags = new HtmlMeta {Name =「W」,Content =「Smart」}; Header.Controls.Add(metaTags); metaTags = new HtmlMeta {Name =「W.cg」,Content =「afasfsa」}; Header.Controls.Add(metaTags);給我一個錯誤:無法修改控件集合。您的幫助將不勝感激。 – Ruruboy 2013-12-17 19:19:50

3

您可以在html頭部的母版頁上添加內容佔位符。然後,您可以將內容添加到特定內容頁面中的內容部分,並將其輸出到頁眉。

16

This page解釋了新的功能: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> 
+1

你不能添加像這樣的刷新。 – Pleun 2011-06-01 09:24:40

+1

+1不知道這是ASP.NET 4的可能! – Curt 2012-03-07 12:20:57

+0

不回答問題。 – 2013-04-26 16:28:53

3
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); 
} 

source url

4

在設計頁面中添加以下代碼現在

<meta id="metaDescription" runat="server" name="Description" /> 

下面的代碼添加到您的.cs頁

Page.MetaKeywords = "keyword1, keyword2, keyword3"; 
    Page.MetaDescription = "Example of new meta tag"; 
+1

不需要將元標記添加到Site.Master即可讓代碼繼續工作。 – Brent 2013-12-06 17:37:21

+1

一旦你添加到aspx文件並保存它,它會自動添加到visual studio中的設計器文件 – 2016-07-01 09:10:52

2

的一種方式,我發現做到這一點(即我沒有在這裏列出)是有一個文字,並填寫任何類型的元標籤你想要的。就我而言,我需要使用它沒有主頁,有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; 
相關問題