1

テキストが Html.DisplayFor 呼び出しの結果である Html.ActionLink を表示したい状況があります。その理由は、表示しているプロパティの UIHint 属性を利用しているためです。これは、金額に基づいて色分けされた金額です。問題は、レンダリングされた出力ではなく、エンコードされた HTML (span タグといくつかのスタイル) が表示されることです。かみそりは次のとおりです。

@Html.ActionLink(Html.DisplayFor(modelItem => item.Balance).ToHtmlString(), "Transactions", new { id = item.ID })

そのため、私の DisplayFor 呼び出しは UIHint ビュー コードを正しく見つけていますが、前述のように、レンダリングされた出力ではなく、生の/エンコードされた HTML を返しています。それが理にかなっていることを願っています。問題は、DisplayFor 呼び出しの真のレンダリング出力を ActionLink に取得するにはどうすればよいかということです。

リンク ターゲット自体は正しいのですが、リンク テキストが壊れています。

4

1 に答える 1

4

これを試すことをお勧めします:

<a href="@Url.Action("Transactions", new { id=item.ID})">@Html.DisplayFor(modelItem => item.Balance)</a>
于 2013-10-17T18:05:27.817 に答える