Как правильно поставить ASP.NET сайт отключен, если важные службы недоступны

#asp.net #asp.net-mvc #asp.net-mvc-3 #architecture

#asp.net #asp.net-mvc #asp.net-mvc-3 #архитектура

Вопрос:

Как бы вы отнеслись к переводу сайта в автономный режим, если база данных не работает или адаптер базы данных отсутствует / не удалось загрузить / и т.д.?

Я спрашиваю в контексте ASP.NET MVC 3, но это может применяться к любому ASP.NET сайт.

Допустим, где-то в App_Start вы загружаете сборку для доступа к данным, и это отсутствует и / или что-то еще дает сбой. В этом случае сайт фактически не может функционировать.

Я ищу достойный / элегантный способ перевести сайт в «Режим обслуживания» точно так же, какApp_Offline.htm работает.

Комментарии:

1. Определить режим обслуживания? Просто перевести все приложение в автономный режим?

2. Да! Режим обслуживания переводит все приложение в автономный режим и для любого веб-запроса отображает ту же веб-страницу, на которой указано, что это находится в режиме обслуживания.

Ответ №1:

 catch (ReallyBadException ex) {
    Utilities.EmailAdministrator();
    File.Copy(@"c:templatesApp_Offline.htm", @"c:pathtowebsiteApp_Offline.htm");
}
  

Комментарии:

1. о … так что я не могу избежать создания App_offline.htm файл

2. Вы хотели что-то подобное App_Offline.htm , так почему бы не использовать App_Offline.htm ? Что ты имеешь против этого? Как бы, по-вашему, выглядел так называемый «режим обслуживания»?

3. Нет, mellamokb, я не против этого 🙂 Я просто спрашиваю, может ли быть что-нибудь более элегантное, простое или более прямолинейное. Если это идеально, то пусть будет так! 🙂

Ответ №2:

Проверьте схему автоматического отключения

Возможно, слишком общий для вас (я не уверен, ищете ли вы концептуальное решение или ASP.NET специфично), но это может вам помочь.

Комментарии:

1. доступно множество ссылок. здесь у вас есть еще примеры .net: timross.wordpress.com/2008/02/10 /…