HTML:
<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属性,并以/>
关闭。
如何以这种方式渲染?
答案 0 :(得分:3)
我仍然在.net 3.5上,但是把它放在Page_Load中,它会做你需要的:
HtmlMeta keywords = new HtmlMeta();
keywords.Name = "keywords";
keywords.Content = "one two trhee;
Header.Controls.Add(keywords);
PS:示例是针对关键字标签,但结果是相同的。
答案 1 :(得分:3)
您应该从id
中删除<meta>
属性,这意味着id
无法从服务器端访问该控件,而是可以动态创建控件然后添加到页面:
HtmlMeta meta = new HtmlMeta();
meta.Name = "keywords";
meta.Content = ThisBlog.MetaDescription;
this.Header.Controls.Add(meta);