我有一个数据表,其中填充了SQL数据库中的数据。当我将值输出到控制台时,它会正确输出,因为它正在处理换行符\n
在观察窗口中,我可以看到它正在处理所有应有的内容,并向我显示"\nCreate a balances dataset in order to determine:\r\n\t• Current Balance\r\n\t•
然而,当在ASP.Net中输出时,监视窗口值和输出显示此"Create a balances dataset in order to determine: • Current Balance"
我不知道为什么两者有所不同,如果有人能帮助我,我将不胜感激。
我正在以类似的for循环访问数据表中的数据
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
我完全清楚我需要获得一个标签,但是我需要在字符串中锁定一些内容来替换它。
答案 0 :(得分:1)
您可以在.aspx
标记中将其作为绑定表达式执行,如下所示:
<%# Eval("YourMultilineString").ToString().Replace(Environment.NewLine,"<br/>") %>
答案 1 :(得分:0)
根据我的理解,当您将页面视为呈现的HTML时,<br />
将创建一个新行,而当您查看源代码时,\ n将创建一个新行。
或者,如果您要输出到控制台而不是某个将由Web浏览器呈现的地方,那么\ n将在控制台输出中创建换行符。
如果您的输出呈现为HTML网页,那么最好选择<br/>
。
答案 2 :(得分:-1)
因为\n
是控制台模式中的新行,但不是html页面中的新行。
尝试将\n
替换为<br/>
。