Csharp/C#教程:.Replace(Environment.NewLine,“”)适用于localhost但不是我上传网站到主机时分享


.Replace(Environment.NewLine,“”)适用于localhost但不是我上传网站到主机时

我不知道为什么会这样。 这是我的代码,当我在localhost上尝试它时,它工作得很好但是当我上传我的网站时,我的文字没有
。 为什么会这样? 我怎样才能用新线修复这个问题? ( white-space: pre-line;对我来说不是解决方案,它不能在IE6上工作,而且它正在弄乱我的样式)

 @Html.Raw(Html.Encode(Model.Body) .Replace(Environment.NewLine, "
"))

正如BuildStarted在评论中提到的,如果你使用Environment.NewLine ,浏览器可能会发送rnn ,这会破坏 – 我不认为asp.net会在运行你的代码之前修复它。

我建议您使用正则表达式替换换行符: "\r?\n"这应该匹配两种情况(我不希望任何浏览器实际上只使用’ r’)。

我相信这个答案是最好的: https : //stackoverflow.com/a/8196219/550975

 string result = Regex.Replace(input, @"rn?|n", "
");

自IE6以来发生了很多事情(感谢上帝!)所以我想提一下问题的CSS解决方案。

在你的C#中:

 ViewBag.StringText = "some text" + Environment.NewLine + "more text in a new line"; 

在你的CSS中:

 .newlines { white-space:pre-line; } 

在你的剃刀:

 
@ViewBag.StringText

而不是使用Environment.NewLine ,试试这个:

上述就是C#学习教程:.Replace(Environment.NewLine,“”)适用于localhost但不是我上传网站到主机时分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 someString.Replace(@"rn", "
");

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/991747.html

(0)
上一篇 2021年12月24日
下一篇 2021年12月24日

精彩推荐