dev*_*xer 12 asp.net-mvc asp.net-mvc-3
在我的web.config中,我有:
<system.web>
<customErrors mode="On" defaultRedirect="Error.cshtml" />
</system.web>
Run Code Online (Sandbox Code Playgroud)
在Views/Shared/Error.cshtml中,我有:
@model System.Web.Mvc.HandleErrorInfo
@{
ViewBag.Title = "Error";
}
<h2>
Sorry, an error occurred while processing your request.
</h2>
Run Code Online (Sandbox Code Playgroud)
如果我将无效的URL /路由放入浏览器,我会得到:
'/'应用程序中的服务器错误.
无法找到该资源.
说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用.请查看以下网址,确保拼写正确.
请求的URL:/Error.cshtml
为什么找不到Error.cshtml?该文件肯定在Views/Shared中.
defaultRedirect不会直接转到视图.您的defaultRedirect看起来像一个无法处理的剃刀视图文件.例如:它从哪里获得模型?它不是也不能在配置文件中指定,因此它无法处理视图.
如果您想在MVC中使用更多动态错误页面,则可能需要在MVC 3中读取自定义错误页面和错误处理
小智 5
这个对我有用.只需在web.config中进行此更改:
<system.web>
<customErrors mode="On" defaultRedirect="~/Views/Shared/Error.cshtml">
</customErrors>
</system.web>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17956 次 |
| 最近记录: |