使用razor在html页眉中输出元标记

时间:2018-03-26 10:53:49

标签: c# razor xhtml umbraco

我有一个剃须刀帮助器,用于动态创建元标记,但我在页面源中看到的只是asci字符..页面源应该是<meta name='robots' content='noindex' />非常感谢所有回复和建议。谢谢!

帮助者 -

@helper WriteMetaRobots(DynamicNode siteRoot)
{
var robotValue = "noindex";
var robots = !string.IsNullOrEmpty(CurrentModel.GetPropertyValue("metaRobots")) ? "<meta name='robots' content='"+robotValue+"' />" : "";
    @robots
}

页面来源 -

&lt;meta name=&#39;robots&#39; content=noindex /&gt;

1 个答案:

答案 0 :(得分:1)

Razor对html进行编码以防止xss攻击。所以你必须明确告诉剃刀不要编码html标签。而不是@robots,您需要在此使用@Html.Raw(robots)

有关xss预防的更多信息,请访问here