[英]HTML in MVC RouteLink
我有一個像這樣構建的RouteLink
<p class="articleLink">
@MvcHelper.Html.RouteLink(article.Title, "Article_Route", new RouteValueDictionary() { { "articleId", article.Id }, { "seoUrl", article.SeoUrl } }))
</p>
但是, article.Title
可能包含HTML,即值可能是<em>Sample</em> Title
,而后者又會像這樣呈現
<a href="/Article/111111/Sample-Title"><em>Sample</em> Title</a>
有沒有辦法阻止HTML被轉義,而是被視為實際的HTML? 或者我需要在這種情況下創建一個標准的HTML <a href...
鏈接(從而失去與RouteLink助手相關的所有細節)。
如果你想在你的錨內部使用HTML,請不要使用Html.RouteLink
(因為默認情況下會對鏈接文本進行HTML編碼),而不是使用Url.RouteUrl
手動構建你a
標記來生成網址:
<p class="articleLink">
<a href="@(Url.RouteUrl("Article_Route",
new RouteValueDictionary()
{ { "articleId", article.Id },
{ "seoUrl", article.SeoUrl } }))">
@Html.Raw(article.Title)
</a>
</p>
或者您可以創建自己的非編碼RouteLink
助手。
您可以使用HtmlHelper.Raw() 。 話雖如此,在模型/視圖模型中保留任何HTML可能不是一個好主意,這違反了模型和表示的分離原則,也存在安全隱患。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.