有没有一种方法可以在不更改 Razor 代码的情况下传递带有 HTML 标签的字符串?
场景(当前代码):
string msg = "<a href='http://www.google.com/html/'>Google</a>";
输出:
<a href='http://www.google.com/html/'>Google</a> on the page.
目标结果:
无需更改代码“@msg”即可链接至 Google。
尝试@Html.Raw(HttpUtility.HtmlDecode(msg));
你可以尝试使用
HtmlString msg = new HtmlString("<a href='http://www.google.com/html/'>Google</a>");
而不是
string msg = "<a href='http://www.google.com/html/'>Google</a>";
嘿,您可以将剃刀代码编辑为:
@{
HtmlString msg = new HtmlString("Hello <br> Hello Again");
<p style="text-align:justify;"> @msg </p>
}
很简单
我将其放在这里,以防将来节省某人的时间 - 使用 Html.Raw 似乎对 .Net 8 上的剃刀组件没有帮助。 使用转换为 MarkupString 确实解决了问题
<p>Your text msg: @((MarkupString) msg) </p>