从我的控制器中,我将一个带有unicode的向上箭头(& uarr)或向下箭头(& darr)分配给ViewBag,我想在视图中使用它。
当然我希望输出成为一个箭头,但这不起作用,输出变成一个字符串(例如& uarr)。
控制器:
...
ViewBag.Arrow = "↑";
...
查看:
...
ViewBag.Arrow <br /> // <--- ↑
...
答案 0 :(得分:1)
您必须使用@Html.Raw(ViewBag.Arrow)
输出,这样您的字符串将逐字呈现,而不是编码(这就是问题所在)。
使用简单@ViewBag.Arrow
输出会导致asp.net mvc编码您的安全html输出值。
答案 1 :(得分:0)
您可以尝试这样的事情:
WebUtility.HtmlDecode(ViewBag.Arrow);
答案 2 :(得分:0)
最好使用@MvcHtmlString.Create(ViewBag.Arrow)
而不是@Html.Raw(...
。请在此处查看我的答案,原因为:Writing/outputting HTML strings unescaped