Старая веб-форма ASP.NET содержит код, встроенный в код :( - PullRequest
3 голосов
/ 09 августа 2011

У меня есть веб-сайт ASP.NET с некоторым встроенным кодом на главной странице ..

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

, но он отображает эту строку как ..

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

В коде у меня есть следующее ...

protected string HeadTitle { get; set; }

Кто-нибудь может помочь?

Ответы [ 3 ]

3 голосов
/ 09 августа 2011

Удалите атрибут runat="server" из тега <head> на главной странице.

2 голосов
/ 09 августа 2011

Подход, который я предпочитаю, заключается в установке значения мета в коде.

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>
0 голосов
/ 09 августа 2011

Если это <head> с runat="server", вы можете удалить часть runat="server" или изменить <%= на <%# и вызвать Header.DataBind(); из Page_Load

.
...