2011-03-07 77 views
2

HTML:ASP.net渲染meta標籤有效

<meta name="description" runat="server" id="MetaDescription" content="" /> 

代碼隱藏:

MetaDescription.Attributes["content"] = ThisBlog.MetaDescription; 

這使得爲:

<meta id="HeadContent_MetaDescription" name="description" content="My page description"></meta> 

按照this answer它需要有沒有ID屬性,並以/>結束。

我該如何使它以這種方式呈現?

回答

3

我仍然在.NET 3.5,但是把這個在Page_Load中,它會做你需要的東西:

HtmlMeta keywords = new HtmlMeta(); 
keywords.Name = "keywords"; 
keywords.Content = "one two trhee; 
Header.Controls.Add(keywords); 

PS:例子是關鍵詞標籤,但結果是一樣的。

3

您應該刪除從<meta>id屬性,這意味着該控件將無法從服務器端訪問由id而是它它可以被動態地創建,然後添加到頁面:

HtmlMeta meta = new HtmlMeta(); 
meta.Name = "keywords"; 
meta.Content = ThisBlog.MetaDescription; 
this.Header.Controls.Add(meta);