旧的ASP.NET webform有一些内联代码被编码:(

时间:2011-08-09 14:47:45

标签: c# asp.net webforms inline-code

我有一个ASP.NET webforms网站,在母版页上有一些内联代码..

<meta property="og:title" content="<%=HeadTitle %>"/>

但它将该行渲染为..

<meta property="og:title" content="&lt;%=HeadTitle %>" />

在代码隐藏中,我有以下内容......

protected string HeadTitle { get; set; }

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:3)

从母版页中的runat="server"标记中删除<head>属性。

答案 1 :(得分:2)

我更喜欢的方法是在后面的代码中设置元的值。

protected void myMeta(string myTitle, string myContent)
{
    Page.Title = myTitle;

    if ((Page.Header != null) && (Page.Header.Controls.Count > 0))

    {
        Page.Header.Controls.AddAt(1, new HtmlMeta("content", myContent));

    }
}

.aspx本身只有普通标签

<head id="myHead" runat="server">
<title></title>
</head>

答案 2 :(得分:0)

如果它位于带有<head>的{​​{1}}中,您可以删除runat="server"部分,也可以将runat="server"更改为<%=并致电{{ 1}}来自<%#