C# 如何以及何时处理停机的数据库?

C# 如何以及何时处理停机的数据库?,c#,asp.net-mvc,database,C#,Asp.net Mvc,Database,我的问题是,我必须以某种方式处理MVC应用程序中数据库关闭的情况。那么,我是否应该尝试{}catch{}在每个控制器中打开连接?或者最佳实践是什么 注: 对于示例数据库访问,以某种方式在少数几个管理器类中进行隔离 为什么要在每个控制器中打开连接。这应该隔离在它自己的可重用类中 您可能希望签出存储库模式以实现数据访问。为什么要在每个控制器中打开连接。这应该隔离在它自己的可重用类中 您可能希望检查存储库模式以实现数据访问。首先,如果每个控制器中都有单独的数据库处理例程,我将首先将其组合到基类或可重用

我的问题是,我必须以某种方式处理MVC应用程序中数据库关闭的情况。那么,我是否应该尝试{}catch{}在每个控制器中打开连接?或者最佳实践是什么

注:
对于示例数据库访问,以某种方式在少数几个管理器类中进行隔离

为什么要在每个控制器中打开连接。这应该隔离在它自己的可重用类中


您可能希望签出存储库模式以实现数据访问。

为什么要在每个控制器中打开连接。这应该隔离在它自己的可重用类中


您可能希望检查存储库模式以实现数据访问。

首先,如果每个控制器中都有单独的数据库处理例程,我将首先将其组合到基类或可重用成员中


在此之后,您应该能够使用ASP.NET MVC的[HandleError]属性来指定如何处理数据库中的错误。

首先,如果每个控制器中都有单独的数据库处理例程,我将首先将其合并到基类或可重用成员中


之后,您应该能够使用ASP.NET MVC的[HandleError]属性指定如何处理数据库中的错误。

如果您没有数据库连接,则在生产数据库驱动的web应用程序中,通常这意味着发生了超出应用程序范围的错误。你唯一能做的就是给用户一个友好的错误消息,并告诉负责修复的人。这是全局错误处理的任务,而不是每个控制器。

如果在生产数据库驱动的web应用程序中没有数据库连接,通常这意味着发生了超出应用程序范围的错误。你唯一能做的就是给用户一个友好的错误消息,并告诉负责修复的人。这是全局错误处理的任务,不是每个控制器。

它是隔离的,但我想知道在连接出现问题时如何响应用户,以及在哪里处理错误。使用[HandleError]属性装饰类,以及在引发未捕获的异常时,它们将被迅速转移到错误页面/Views/Shared/error.aspx我相信它是孤立的,但我想知道,当连接出现问题时,我如何响应用户,以及在哪里处理错误。使用[HandleError]属性装饰类,以及当抛出未捕获的异常时,我相信,他们会被快速带到错误页面/Views/Shared/error.aspx