gpt4 book ai didi

asp.net-mvc - 在 MVC 4 应用程序中处理带有自定义错误的 UnauthorizedAccessException

转载 作者:行者123 更新时间:2023-12-01 05:22:37 24 4
gpt4 key购买 nike

我通过在 filterConfig 注册中应用 HandleError 属性来启用应用程序的全局错误处理。

 public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
}

然后我使用自定义错误 (web.config) 希望为每个服务器错误显示友好的错误消息。
 <customErrors mode="On"  ></customErrors>

对于大多数异常,这似乎工作正常,并且我得到了预期的行为,因为正在显示自定义错误页面 View (共享 View 文件夹中的 Error.cshtml)。

但是,我最近注意到如果抛出的错误是 UnauthorizedAccessException,这不是我看到的行为。

我对此有点困惑,因为在 fiddler 中查看,我看到此 UnauthorizedAccessException 异常返回一个普通的 500 内部服务器错误,就像标准异常一样。

那么标准异常如何遵守我的 customError 设置,而 UnauthorizedAccessException 却没有呢?

并且我怎样才能让它们表现得相同,因为它们本质上都是一个错误,我想防止最终用户看到。

最佳答案

这篇博文为我提供了异常处理的概述,使我能够决定如何处理未授权的访问异常,这实质上意味着在 Application_OnStart 中处理它们。

http://prideparrot.com/blog/archive/2012/5/exception_handling_in_asp_net_mvc

就我而言,使用 HandleErrorAttribute 和全局 Application_OnStart 处理错误似乎没有多大意义,因此出于我的目的,我决定最好处理 Application_OnStart 中的所有内容,

关于asp.net-mvc - 在 MVC 4 应用程序中处理带有自定义错误的 UnauthorizedAccessException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15681159/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com