首页 > 解决方案 > 字符串未将换行符输出到视图表

问题描述

我试图在我的检查中合并多个错误消息,但有时它发现该站点丢失并且错误字符串不为空。发生这种情况时,它将显示两个错误,但不会在新行上输出。

这是一个例子......

在此处输入图像描述

根据代码它应该说

不支持 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>
}

标签: c#asp.net-mvc

解决方案


而不是与 连接Environment.NewLine,与连接<br>

errors = $"{errorformats[0]}<br>{errorformats[1]}";

浏览器通常不显示\rand\n字符,留下空白或完全中断。


推荐阅读