Reputation: 20790
How would you go about placing the site off-line if the database is down or the database adapter is missing / failed to load / etc.?
I am asking in the context of ASP.NET MVC 3 but this can apply for any ASP.NET site.
Let's say somewhere around App_Start you load an assembly for data access and this is missing and/or something else fails. In this case the site can't actually function.
I'm looking for a decent/elegant way to place the site in "Maintenance mode" just like App_Offline.htm works.
Upvotes: 5
Views: 736
Reputation: 632
Check out Circuit breaker pattern
Maybe too general for you (i am not sure if you are looking for conceptual solution or ASP.NET specific) but it can help you.
Upvotes: 1
Reputation: 56779
catch (ReallyBadException ex) {
Utilities.EmailAdministrator();
File.Copy(@"c:\templates\App_Offline.htm", @"c:\path\to\website\App_Offline.htm");
}
Upvotes: 6