在视图输出

时间:2017-02-14 00:30:25

标签: c# asp.net-mvc

我在数据库中有一个包含换行符的字段。我想在我的视图中看到换行符,所以我制作了这个显示模板:

~/Views/Shared/DisplayTemplates/_StringWithBreaks.cshtml

@model string

@( Model.Replace(System.Environment.NewLine, "<br>") )

然后我称之为:

@Html.DisplayFor(modelItem => item.BodyTemplate, "_StringWithBreaks" )

问题是它逃脱了HTML,因此它不是在HTML中插入而是转义它,因此<br>是可读的。

这样做的正确方法是什么,以便出现断裂?

1 个答案:

答案 0 :(得分:1)

您可以使用white-space: pre设置包含元素的样式(此时不需要DisplayTemplate

<div style="white-space: pre;">
    @Html.DisplayFor(modelItem => item.BodyTemplate)
</div>

css whitespace reference