Asp.net mvc 4 MVC4或MVC5中字符串的简单段落格式

Asp.net mvc 4 MVC4或MVC5中字符串的简单段落格式,asp.net-mvc-4,razor,string-formatting,Asp.net Mvc 4,Razor,String Formatting,我使用的是MVC4,我有一个字符串作为varchar(Max)存储在SQL Server中,我的数据注释在模型中指定数据类型(DataType.multilitext)。我认为显示这种类型文本的助手不会在一行上把所有内容都显示出来,但是当我使用基本支架在页面上显示时,多行文本框中的任何格式都不会显示出来。但是当我在crud端编辑描述时,格式确实会显示出来。为什么开箱即用这么难做到这一点。我可以使用MVC4或MVC5解决方案。我想他们应该是相似的 我使用以下方法在我的页面上显示: @Htm

我使用的是MVC4,我有一个字符串作为varchar(Max)存储在SQL Server中,我的数据注释在模型中指定数据类型(DataType.multilitext)。我认为显示这种类型文本的助手不会在一行上把所有内容都显示出来,但是当我使用基本支架在页面上显示时,多行文本框中的任何格式都不会显示出来。但是当我在crud端编辑描述时,格式确实会显示出来。为什么开箱即用这么难做到这一点。我可以使用MVC4或MVC5解决方案。我想他们应该是相似的

我使用以下方法在我的页面上显示:

    @Html.DisplayNameFor(model => model.InstructionEn)
&

我在想用
标记替换新行的方法可能会奏效。但是我该怎么做呢?我知道新行格式在那里


我也考虑过使用标记,但不知道从何处开始。

您需要将纯文本换行符(
\n
)替换为HTML字符(

):

@Html.Raw(recipe.RecipeInstructionsEn.Replace(“\n”,“
”)

使用
Html.Raw
可防止Razor应用的默认Html编码。如果没有它,换行符实体将显示为“
”,而不是作为HTML换行符。

您需要将纯文本换行符(
\n
)替换为HTML换行符(

):

@Html.Raw(recipe.RecipeInstructionsEn.Replace(“\n”,“
”)

使用
Html.Raw
可防止Razor应用的默认Html编码。如果没有它,换行符实体将显示为“
”,而不是作为HTML换行符。

我使用了HTML.Raw,但没有使用replace。我经常知道去哪里寻找答案,但有时我会错过确切的实现。昨晚我真的很累。谢谢我看看我能用这个做什么!完美,我知道这很简单。我看了很多地方,发现有人实例化了整个类,以展示如何用
标记替换/n,并将值放入一个新变量中,但这对于简单的应用程序来说毫无意义。我使用了Html.Raw,但没有使用replace。我经常知道去哪里寻找答案,但有时我会错过确切的实现。昨晚我真的很累。谢谢我看看我能用这个做什么!完美,我知道这很简单。我看了很多地方,发现有人实例化了整个类,以展示如何用
标记替换/n,并将值放入一个新变量中,这对于一个简单的应用程序来说毫无意义。
    @recipe.RecipeInstructionsEn
@Html.Raw(recipe.RecipeInstructionsEn.Replace("\n", "<br />"))