How to make Html.DisplayFor display line breaks?

后端 未结 8 1521
梦谈多话
梦谈多话 2020-12-04 21:53

Embarrassingly newbie question:

I have a string field in my model that contains line breaks.

@Html.DisplayFor(x => x.MultiLineText)         


        
8条回答
  •  挽巷
    挽巷 (楼主)
    2020-12-04 22:20

    A HtmlHelper extension method to display string values with line breaks:

    public static MvcHtmlString DisplayWithBreaksFor(this HtmlHelper html, Expression> expression)
    {
        var metadata = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
        var model = html.Encode(metadata.Model).Replace("\r\n", "
    \r\n"); if (String.IsNullOrEmpty(model)) return MvcHtmlString.Empty; return MvcHtmlString.Create(model); }

    And then you can use the following syntax:

    @Html.DisplayWithBreaksFor(m => m.MultiLineField)
    

提交回复
热议问题