我目前正在开发MVC应用程序。我的问题是,我无法让我的客户错误处理工作正常。
基本上发生的事情是我抛出异常来在控制器中测试它。然后应用程序应该将用户重定向到〜/ Shared / Errors.cshtml但由于某种原因它不会这样做。
这是代码。
抛出异常:
throw new Exception("Something went wrong");
Webconfig文件:
<customErrors mode="RemoteOnly"/>
ErrorController代码:
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>
提前感谢您提供任何帮助
答案 0 :(得分:-2)
你应该返回这样的视图。
return View("~/Views/Shared/Errors.cshtml");