【发布时间】:2014-10-27 11:13:35
【问题描述】:
我目前正在开发一个 MVC 应用程序。我的问题是我的自定义错误处理无法正常工作。
所以基本上发生的事情是我抛出一个异常来在控制器中测试它。然后应用程序应该将用户重定向到 ~/Shared/Errors.cshtml 但由于某种原因它没有这样做。
这里是代码。
抛出异常:
throw new Exception("Something went wrong");
网页配置文件:
<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>
提前感谢您提供的任何帮助
【问题讨论】:
-
通过
检查它是否有效? -
请查看article。
-
我最近回答了类似的问题,看看有没有帮助-stackoverflow.com/questions/26357340/…
-
@Connor 你是否使用了 HandleError 属性来处理异常?
标签: c# asp.net-mvc asp.net-mvc-4 error-handling