I have a textarea
in mvc. When data is entered into that and I'm displaying it back to the user, how do I show the line breaks?
I display like this:
<%= Model.Description%>
See Question&Answers more detail:osI have a textarea
in mvc. When data is entered into that and I'm displaying it back to the user, how do I show the line breaks?
I display like this:
<%= Model.Description%>
See Question&Answers more detail:osThe following class implements a HtmlHelper that properly encodes the text:
public static class HtmlExtensions
{
public static MvcHtmlString Nl2Br(this HtmlHelper htmlHelper, string text)
{
if (string.IsNullOrEmpty(text))
return MvcHtmlString.Create(text);
else
{
StringBuilder builder = new StringBuilder();
string[] lines = text.Split('
');
for (int i = 0; i < lines.Length; i++)
{
if (i > 0)
builder.Append("<br/>
");
builder.Append(HttpUtility.HtmlEncode(lines[i]));
}
return MvcHtmlString.Create(builder.ToString());
}
}
}
It's easy to use in your views:
<%= Html.Nl2Br(Model.MultilineText) %>
Or with Razor:
@Html.Nl2Br(Model.MultilineText)