4

コントローラーで正規の URL を作成し、それを ViewModel に渡してヘッダーに表示したいと考えています。

私のViewModelのURL文字列は次のとおりです。

/books?page=4&pagesize=25

次のコードがあります。

@if (!string.IsNullOrEmpty(Model.LinkCanonical))
{
    <link rel="canonical" href="@Html.Raw(Model.LinkCanonical)" />
}

出力は次のとおりです。

<link rel="canonical" href="/books?page=4&amp;pagesize=25" />

ヘルパーは の代わりにHtml.Raw()出力する必要があります。&&amp;

これはどのように起こりますか?

編集:

このソリューションは機能し、既にここで言及されています: ASP.NET MVC 4 のアンカー タグで Html.Raw がアンパサンドをエスケープするのはなぜですか? :

 @Html.Raw("<link rel=\"canonical\" href=" + Model.LinkCanonical + "\" />")
4

2 に答える 2

1

試す:

<link rel="canonical" href="@Html.Raw(HttpUtility.HtmlDecode(Model.LinkCanonical))" />
于 2013-04-16T14:10:26.337 に答える