在cshtml中编码特殊字符

Encode special characters in cshtml

我有一个带有隐藏字段的剃刀视图 Model.TokenToken 由特殊字符组成。此 Token 附加到 href.

中的 link
<a href='http://localhost.com?token=@Model.Token'>Link</a>

如果 Model.Token 有一个 +,link 将其呈现为空白 space。也就是说,如果

Model.Token = 'ABC+DE'

link 变为

http://localhost.com?token=ABC DE

如何对 link 中的 Token 进行编码,以便不删除 +?我需要使用 js 并使用 encodeURI,还是有更好的方法来实现此目的?

你可以试试System.Uri

<a href='http://localhost.com?token=@Uri.EscapeUriString(Model.Token)'>Link</a>