asp.net-mvc – 即使我设置CustomError =“On”,自定义错误页面
我正在使用Visual Studio 2012和MVC 4 Framework,如果未处理异常,我希望看到共享文件夹的友好错误页面. (我知道,作为一个开发者,我需要查看错误详细信息,但我只想测试此设置)
到目前为止,我知道在web.config的system.web部分添加以下代码应该可以解决问题 <customErrors mode="On" /> 不幸的是,我得到了这个:
<!-- Web.Config Configuration File --> <configuration> <system.web> <customErrors mode="RemoteOnly"/> </system.web> </configuration>
<!-- Web.Config Configuration File --> <configuration> <system.web> <customErrors mode="On" defaultRedirect="mycustompage.htm"/> </system.web> </configuration> 我想按照描述执行此操作,而不是使用向HomeController添加操作,设置路由或其他内容的解决方法. 更新(链接已更改): 有没有人知道为什么我看不到上面提到的设置的友好错误页面? 解决方法
这是一步一步指导这样做,
首先,首先将“customErrors”模式属性设置为“on”. (这指定启用自定义错误.) 1.来自Web.config的代码 <system.web> <customErrors mode="On"></customErrors> </system.web> 下面是我的控制器代码,我在控制器类上指定了HandleError属性.同样为了生成错误,我从Index操作中抛出异常. 2.来自HomeController.cs的代码 [HandleError] public class HomeController : Controller { public ActionResult Index() { throw new Exception("Error Occured !"); ViewBag.Message = "Welcome to ASP.NET MVC!"; return View(); } public ActionResult About() { return View(); } } 正如您在下面的屏幕截图中看到的,我在Views文件夹的Shared文件夹中定义了一个Error.cshtml视图. 3.解决方案Explorer 请注意,Error.cshtml视图(如下所示)使用’System.Web.Mvc.HandleErrorInfo’模型 4.来自Error.cshtml的代码 @model System.Web.Mvc.HandleErrorInfo @{ ViewBag.Title = "Error"; } <h2> Sorry,an error occurred while processing your request. </h2> 在运行项目时,我现在获得以下输出,而不是获得黄色死亡屏幕. 取自this article 更新: 通过创建一个新项目来尝试这个,这应该并且确实有效.我怀疑您的Error.cshtml文件可能没有@model System.Web.Mvc.HandleErrorInfo的模型,或者您可能在不同的视图文件夹中有多个Error.cshtml页面. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何在ASP.NET中为Craigslist批量发布创建根RDF
- asp.net-mvc – 使用Ajax.ActionLink进行正确的H
- asp.net-mvc-3 – 从根请求调用区域控制器
- asp.net – 单个应用程序中的多个母版页
- asp.net – .net MVC将MP4流式传输到iDevice问题
- ASP.NET vs. Silverlight
- asp.net-mvc-4 – ASP.NET MVC 4自定义权限属性
- asp.net – 将web.web应用程序池添加到web.confi
- asp.net-mvc – 从asp.net mvc控制器返回一个js文
- 下载 – 使用ASP.Net Webapi流式传输大图像