MVC自定义错误处理问题

本文关键字:处理问题 错误 自定义 MVC | 更新日期: 2023-09-27 18:27:53

我目前正在开发一个MVC应用程序。我的问题是,我无法使我的customwerror处理正常工作。

所以本质上,我会抛出一个异常来在控制器中测试它。然后应用程序应该将用户重定向到~/Shared/Errors.cshtml,但由于某些原因,它没有这样做。

这是代码。

引发异常:

throw new Exception("Something went wrong");

Webconfig文件:

<customErrors mode="RemoteOnly"/>

错误控制器代码:

  public class ErrorController : Controller
    {
        //
        // GET: /Error/
    public ActionResult Index()
    {
        return View();
    }
}

Error.cshtml:中使用的代码

@model System.Web.Mvc.HandleErrorInfo
@{
    Layout = "_Layout.cshtml";
    ViewBag.Title = "Error";
}
<div class="list-header clearfix">
    <span>Error</span>
</div>
<div class="list-sfs-holder">
    <div class="alert alert-error">
        An unexpected error has occurred. Please contact the system administrator.
    </div>
    @if (Model != null && HttpContext.Current.IsDebuggingEnabled)
    {
        <div>
            <p>
                <b>Exception:</b> @Model.Exception.Message<br />
                <b>Controller:</b> @Model.ControllerName<br />
                <b>Action:</b> @Model.ActionName
            </p>
            <div style="overflow:scroll">
                <pre>
                    @Model.Exception.StackTrace
                </pre>
            </div>
        </div>
    }
</div>

提前感谢您为提供的任何帮助

MVC自定义错误处理问题

您应该返回这样的视图。

return View("~/Views/Shared/Errors.cshtml");