如果关键服务不可用,如何使ASP.NET站点脱机

时间:2011-05-02 20:16:24

标签: asp.net asp.net-mvc asp.net-mvc-3 architecture

如果数据库关闭或数据库适配器丢失/无法加载/等,您将如何离线放置网站?

我在ASP.NET MVC 3的上下文中询问,但这可以适用于任何ASP.NET站点。

让我们说App_Start周围的某个地方你加载一个数据访问的程序集,这个缺失和/或其他东西都失败了。在这种情况下,该网站实际上无法运作。

我正在寻找一种体面/优雅的方式将网站置于“维护模式”,就像App_Offline.htm一样。

2 个答案:

答案 0 :(得分:6)

catch (ReallyBadException ex) {
    Utilities.EmailAdministrator();
    File.Copy(@"c:\templates\App_Offline.htm", @"c:\path\to\website\App_Offline.htm");
}

答案 1 :(得分:1)

查看Circuit breaker pattern

对你来说可能过于笼统(我不确定你是在寻找概念解决方案还是ASP.NET特定的)但它可以帮助你。