我正在尝试在检查中合并多个错误消息,但是有时它会发现该站点丢失并且错误字符串不是空白。发生这种情况时,它将显示两个错误,但不会在新行中输出它。
这里是一个示例...
根据代码应该说
不受支持的日期格式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>
}
答案 0 :(得分:2)
与其与Environment.NewLine
并置,而与<br>
并置。
errors = $"{errorformats[0]}<br>{errorformats[1]}";
浏览器通常不显示\r
和\n
字符,留有空白或完全中断。
答案 1 :(得分:1)
我曾经遇到过类似的问题,并且这种方法有效。只需尝试一下。
<td>@Html.Raw(Model[i].Errors) </td>