Bootstrap错误消息在IIS服务器中不起作用

时间:2019-09-05 11:40:06

标签: c# asp.net iis

当用户尝试上传不正确的工作表格式时,我试图显示错误消息。为此,我正在使用以下代码段,

在控制器中:-

TempData["Error"] = "Cannot contain null values in the Excel sheet";

视图中:-

 @if (TempData["Error"] != null)
    {
        <div>
            <div class="alert alert-danger">
                <strong>Error!  </strong>@TempData["Error"].ToString()
            </div>
        </div>

    }

这在我在localhost中运行时按预期工作,但是当我在IIS服务器上尝试运行时,这不起作用(它没有显示正确的引导错误消息,它显示“处理您的请求时发生错误”),这是不是错误的按摩,而不是得到正确的引导错误按摩,我已经得到了按摩

而且我正在使用引导成功消息,它在localhost和IIS服务器中都可以正常工作,下面是该代码段

 @if (TempData["Success"] != null)
    {
        <div>
            <div class="alert alert-success">
                <strong>Success!  </strong>@TempData["Success"].ToString()
            </div>
        </div>

    }

我无法理解该问题的解决方法

1 个答案:

答案 0 :(得分:0)

很高兴地说我找到了自己的问题的原因,正如我在下面提到的那样,我在代码中使用了全局异常处理,

             }catch(Exception ex)
             {
                LogLastError(ex);
                Console.WriteLine(ex.Message);
                TempData["Error"] = "Cannot contain null values in the Excel sheet";


         }

        public void LogLastError(Exception ex)
        {
            System.Web.HttpContext con = System.Web.HttpContext.Current;

            StringBuilder sb = new StringBuilder();
            sb.AppendLine("Page          : " + con.Request.Url.ToString());
            sb.AppendLine("Error Message : " + ex.Message);
            if (ex.InnerException != null)
            {
                sb.AppendLine("Inner Message : " + ex.InnerException.ToString());
            }

            string fileName = System.IO.Path.Combine(Server.MapPath("~/Errors"), 
            DateTime.Now.ToString("ddMMyyyyhhmmss") + ".txt");
            System.IO.File.WriteAllText(fileName, sb.ToString());
        }

因此,无论何时处理异常,都会从我的Error.cshtml中显示异常消息