いくつかのhtmlを含むページにいくつかのテキストを書いています。私はこのように書きます
@文章
しかし、htmlはこのようなテキストとして表示されます
いくつかのテキスト。もう少しテキスト。
私がしたいのは、htmlをテキストではなく実際のhtmlとしてレンダリングすることです。したがって、この例では、リンクを表示したいと思います。どうすればいいですか?
演算子Html.Raw
とは逆に、出力をHTMLエンコードしないメソッドを使用できます。@
@Html.Raw(text)
警告:サイトがXSS攻撃に対して脆弱になるため、これには注意してください。text
これは、変数を完全に制御できる場合にのみ行う必要があります。この変数がユーザー入力、クエリ文字列パラメーター、またはフォームフィールドから直接取得される場合、問題が発生する可能性があります。Html.Raw
ヘルパーで安全に使用できるようにユーザー入力をサニタイズしたい場合は、 AntiXssライブラリを使用できます。