数据表输出未正确/一致地呈现

Datatable output not rendering correctly / consistently

我有一个数据 table,其中填充了来自 SQL 数据库的数据。当我将值输出到控制台时,它会正确输出,因为它正在处理换行符 \n

在手表 window 中,我可以看到它正在按应有的方式处理所有事情,并向我显示像 "\nCreate a balances dataset in order to determine:\r\n\t• Current Balance\r\n\t•

这样的文本

然而,当在 ASP.Net 中输出时,手表 window 值和输出显示此 "Create a balances dataset in order to determine: • Current Balance"

我不知道为什么两者不同,如果有人能帮助我,我将不胜感激。

我正在像这样在 for 循环中访问数据 table 中的数据

var html = new stringbuilder();

for (int i = 0; i < dt.Rows.Count; i++)
{
      html.AppendLine(String.Format("<p>{0}</p>", row[3].ToString()));
}

编辑 1

忘了说,当我查看源代码时,源代码也显示正确

Create a balances dataset in order to determine:
• Current Balance

编辑 2

我完全知道我需要加入一个
标签,但是我需要在字符串中添加一些东西来替换它。

因为 \n 在控制台模式下是新行,但在 html 页面中不是。 尝试将 \n 替换为 <br/>.

据我了解,<br /> 将在您查看呈现的页面时换行 HTML,而 \n 将在您查看源代码时换行。

或者,如果您要输出到控制台而不是 Web 浏览器将呈现的某个位置,则 \n 将在控制台输出中创建一个换行符。

因此,如果您的输出呈现为 HTML 网页,最好选择 <br/>

您可以在 .aspx 标记中将此作为绑定表达式执行,如下所示:

<%# Eval("YourMultilineString").ToString().Replace(Environment.NewLine,"<br/>") %>