c# - 字符串未将换行符输出到视图表
问题描述
我试图在我的检查中合并多个错误消息,但有时它发现该站点丢失并且错误字符串不为空。发生这种情况时,它将显示两个错误,但不会在新行上输出。
这是一个例子......
根据代码它应该说
不支持 1/06/19 的日期格式。
网站不见了
下面是我的支票
private void FileCheck(string[] strArray, out string INum, out string IDate, out string site, out string errors)
{
INum = strArray[1];
IDate = strArray[2];
errors = "";
site = strArray[10];
string[] errorformats = {$"Unsupported date format of {IDate}.", "Site is missing"};
string[] format = {"MM/dd/yyyy", "M/dd/yyyy", "MM/d/yyyy", "M/d/yyyy"};
DateTime dateTime;
if (!DateTime.TryParseExact(IDate, format, CultureInfo.InvariantCulture,
DateTimeStyles.None, out dateTime))
errors = errorformats[0];
if (site == "" && errors != "")
errors = $"{errorformats[0]}{Environment.NewLine}{errorformats[1]}";
else if (site == "" && errors == "")
errors = errorformats[1];
}
我使用下面的代码调用它
using (var sr = new StreamReader(newFullPath))
{
while ((strbuild = sr.ReadLine()) != null)
{
var strArray = strbuild.Split('|');
string INum = string.Empty,
IDate = string.Empty,
site = string.Empty,
errors = string.Empty;
if (strArray[0] == "1")
{
FileCheck(strArray, out INum, out IDate, out site, out errors);
这是我的表的代码:
@if (Model != null)
{
<table class="table table-striped">
<!--Table Head-->
<thead>
<tr>
<th>Row</th>
<th>Invoice #</th>
</tr>
</thead>
<!--Table Body-->
<tbody>
@for (var i = 0; i < Model.Count(); i++)
{
<tr class="table-info">
<th scope="row">@i</th>
<td>@Model[i].InvoiceNumber </td>
<td>@Model[i].Errors </td>
</tr>
}
</tbody>
</table>
}
解决方案
而不是与 连接Environment.NewLine
,与连接<br>
。
errors = $"{errorformats[0]}<br>{errorformats[1]}";
浏览器通常不显示\r
and\n
字符,留下空白或完全中断。
推荐阅读
- nagios - Zabbix 是否能够将消息转发到另一个监控平台,如 Icinga2(管理器 MOM 配置管理器)
- javascript - 如何使用 v-on=$listeners 点击原生
- delphi - Chilkat:请求远程签名时出错
- jira - 未收到来自 Jira 的电子邮件
- reactjs - 根据用户对 React Hook Form 的输入显示条件信息
- php - 使用 php-fpm 的 nginx 未加载/运行。没有错误
- java - google-java-format eclipse 插件忽略格式化程序:关闭评论
- python - 在主应用程序中反转 url 时找不到 Django Reverse
- c++ - 等待第一个未来在 C++ 中完成
- google-sheets - 在表 A 中的单元格上查找字符串并将找到的字符串复制到另一个表 B