인코딩 된 HTML을 데이터베이스에 저장합니다.
올바르게 표시 할 수있는 유일한 방법은 다음과 같습니다.
<div class='content'>
@MvcHtmlString.Create(HttpUtility.HtmlDecode(Model.Content));
</div>
못 생겼어. 이 작업을 수행하는 더 좋은 방법이 있습니까?
답변:
이 시도:
<div class='content'>
@Html.Raw(HttpUtility.HtmlDecode(Model.Content))
</div>
사용 Html.Raw()
. Phil Haack은 http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx에 멋진 구문 가이드를 게시했습니다 .
<div class='content'>
@Html.Raw( Model.Content )
</div>
백 슬래시를 표시 할 다른 케이스가 있습니다. \
Razor 및 Java Script로 .
내 @Model.AreaName
모습은 Name1 \ Name2 \ Name3 이므로 표시 할 때 모든 백 슬래시가 사라지고 Name1Name2Name3이 표시 됩니다.
해결 방법을 찾았습니다.
var areafullName = JSON.parse("@Html.Raw(HttpUtility.JavaScriptStringEncode(JsonConvert.SerializeObject(Model.AreaName)))");
페이지 @using Newtonsoft.Json
상단에 추가 하는 것을 잊지 마십시오 chtml
.