gpt4 book ai didi

c# - MVC3 : How to handle constructor exception in controller?

转载 作者:行者123 更新时间:2023-11-30 22:34:22 24 4
gpt4 key购买 nike

我有一个 Controller ,它有多个操作方法,需要来自某个数据库的相同数据列表。由于大多数操作都需要访问列表,因此我直接在 Controller 的构造函数中快速填充了一个包含必要数据项列表的私有(private)成员变量。

一切都很好,直到数据库出现故障并在构造函数中抛出异常。显然,这绕过了正常的 HandleError 功能。

我的目标是捕获此异常并将用户重定向到错误 View 。

  • 为所有操作加载数据的正确方法是什么?
  • 将数据库调用放在 OnActionExecuting 中是否合适?
  • 有没有什么方法可以用加载数据的属性来装饰特定的操作?
  • 我是不是想多了? (毕竟,我可以在 Controller 中放置一个私有(private)方法,然后从需要数据的每个操作中调用它)

最佳答案

您可以创建私有(private)方法并让它填充您的列表(如果它尚未填充),然后返回列表。这样,您只需在第一次需要时调用该方法来填充它,并且您可以从 Controller 的构造函数中取出脆弱的代码。在您的操作方法中处理异常会比在其他地方容易得多。

关于c# - MVC3 : How to handle constructor exception in controller?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7855355/

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