gpt4 book ai didi

asp.net-mvc - 在 ASP.NET MVC 中,OnException 应该用于应用程序异常吗?

转载 作者:行者123 更新时间:2023-12-01 02:59:58 25 4
gpt4 key购买 nike

我正在 ASP.NET MVC 中构建一个小应用程序。我仍在努力寻找解决我遇到的一些设计问题的方法。

其中之一是使用异常。我已经构建了我的模型,以便在对象不存在或用户无法访问时抛出异常。在我看来,我认为我做出了正确的选择。

问题是,下一步是什么?我可以检查 Controller 中的异常,然后重定向到不同的 View ,但这似乎在许多 Controller 的许多操作中产生了许多相同的模式。

或者,我可以简单地避免检查异常并覆盖 Controller (或我将使用的某些基 Controller 类)的 OnException 方法来处理它。这将使我的行动不再困惑。

从我发现的示例中,我可以看到 HandleError 和 OnException 如何用于记录未处理的异常(这是一件好事)并重定向到“抱歉!”页面,但我想知道您对在较少“不可预见”的异常(exception)情况下使用该机制的意见。

最佳答案

您应该查看 HandleError 属性。您可以指定应为哪个异常显示哪个 View 。 ASP.NET MVC HandleError它是特定于 MVC 的,对我来说比使用事件更“干净”。

除了 HandleError 之外,我还使用 ELMAH 来捕获和记录异常。

就我个人而言,我试图达到这样一种程度,即所有生成的异常都在 Controller 级别被捕获,并且不会超出该级别。然而,[handleerror] 正是这样做的——捕获错误并向用户显示相关的、漂亮的页面。

编辑:另请注意,您可以在 Controller 上指定此项,而不仅仅是操作。

詹姆士

关于asp.net-mvc - 在 ASP.NET MVC 中,OnException 应该用于应用程序异常吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1129900/

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