动态og元内容asp.net网页表单母版和内容页面



我有一个带有head标记的母版页,它使用了一些<%=%>用于加载css、js和favicons等内容的标签。我希望动态构建og元内容,如

<meta property="og:title" .../>, 
<meta property="og:description" .../> 
<meta property="og:image" .../> etc

这些数据内容将从每个内容页面生成,并希望将其放在页面头元素上

到目前为止,我尝试的是-在主页加载事件

System.Web.UI.HtmlControls.HtmlMeta tag = new System.Web.UI.HtmlControls.HtmlMeta();
tag.Name = "og:title";
tag.Content = "blah";
Page.Header.Controls.Add(tag);

但它显示了我已经使用<%=%的错误>挡在我的头上。

样本头元件

<head runat="server">
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="format-detection" content="telephone=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="author" content="">
<link rel="stylesheet" href="<%= Page.ResolveClientUrl("~/plugins/font-awesome/css/font-awesome.min.css?v=534521") %>">
</head>

希望一切都清楚。

修复错误的一种可能性:在头中,将<%=更改为<%#,并在代码后面(Page_Load(的末尾添加

Page.Header.DataBind();

另一种可能性是将链路封装在Placeholder控件中。

最新更新