c# - 如何将MVC C#服务器错误+数字转换为行号

标签 c# asp.net-mvc logging model-view-controller error-handling

嗨,我已经编写了MVC C#应用程序的代码,一切都很好,但是似乎确实存在一些错误。这是我的第一个应用程序,我并不感到惊讶。

该应用程序虽然是内部的,所以我确实从用户那里得到了很好的反馈。

他们确实给了我“.....应用程序中的服务器错误”的屏幕快照。

这给了我 Controller 操作,确实有助于缩小错误范围。
但是,如何将行尾的+号转换为实际的行号。
我知道这是某种字节偏移,但是对行号有一个大概的了解会有所帮助。是否有插件或我可以使用的东西?

还是有另一种方式来处理这些问题。我有一个Base Controller ,所有 Controller 都从该 Controller 扩展而来-我已经看到一些东西,您可以使用它写到文件中,以提供有关错误的信息。如果我将其设为通用文件(类似于php错误文件),那么这对我制作的任何应用程序都会有帮助。

最佳答案

您可以在Application_Error()方法内的Global.asax中处理服务器错误。创建一个设计合理的错误页面,并将其保存在项目中的某个位置。在全局asax中,创建一个方法并将错误处理代码放入其中。参见下面的示例代码。

protected void Application_Error()
{
    if (httpContext.AllErrors != null)
    {
        // you can handle message 
        var message = HttpUtility.HtmlEncode(httpContext.AllErrors[0]);
        //you can redirect ugly server error page to the one you created
        httpContext.Response.Redirect($"~/Error/Global");
    }
}

关于c# - 如何将MVC C#服务器错误+数字转换为行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43845923/

相关文章:

c# - 用于降低 Visual Studio C# 中的接口(interface)编程摩擦的工具?

c# - 线程池内存不足异常

c# - C# 通用 Windows 应用程序如何接受命令行参数 (args)

asp.net-mvc - 如何进入云服务 "ASP.NET MVC 4 Web Role"?

c# - 从模型中的嵌套对象获取 MVC4/Razor 中 JavaScript 元素的 ID

python - flask 正确配置日志记录

logging - 是否可以从 Docker 容器中读取通过标准输出传递的消息? (没有 `docker logs` )

c# - C# 中的一个程序,用于判断打开的应用程序是否处于最大化模式

javascript - 在 Bootstrap 下控制间距

apache - 为什么apache&nginx &tomcat access_log格式一样?