Hi,jayaram Ответов: 1

Проблема закрытия в приложении ASP .NET


Привет команда,

Я работаю над Асо .Сетевое веб-приложение. Я должен отправить уведомление по электронной почте в сценариях залежи.
1)всякий раз, когда мое приложение будет получать сбои.
2)я использую сторонние сервисы, поэтому всякий раз, когда 3-й сторонний сервис падает/падает, мне приходится отправлять почту.
3)всякий раз, когда база данных не работает.

В приведенных выше сценариях я должен отправить уведомление по электронной почте.

Примечание: я реализовал этот код в событии Applivation_End, но это событие не было запущено.

Пожалуйста, помогите мне решить эту проблему.

Спасибо,
И jayaram

Что я уже пробовал:

Я реализовал этот код в событии Applivation_End, но это событие не сработало.

Afzaal Ahmad Zeeshan

И поэтому это событие не попадает под удар?

Я рекомендую не использовать этот подход, ловить ошибку по мере ее возникновения и регистрировать ее (или отправлять оттуда электронное письмо), не дожидаясь, пока все рухнет.

Kornfeld Eliyahu Peter

Это означает (за исключением сбоя приложения), что вы должны постоянно опрашивать БД и сторонние службы, чтобы убедиться, что они здоровы и живы...
Это очень трудоемкая вещь, требующая много времени и ресурсов, и в основном идет вразрез с отключенной природой интернета... У вас должна быть очень серьезная причина, чтобы сделать это, иначе просто идите с обработкой исключений...

1 Ответов

Рейтинг:
2

OriginalGriff

Событие Application_End срабатывает только при перезапуске пула IIS (или в паре других менее релевантных случаев), а не при сбое вашей веб-страницы из-за недоступной базы данных или чего-то еще. В веб-приложении Приложение работает, когда любой пользователь подключен и использует его, и оно не отключается из-за проблемы одного пользователя.

Ваш лучший подход-это поперчить свой сайт try...catch блоки и используйте их для отправки ваших электронных писем. Единственный другой подход - это иметь отдельное приложение, которое опрашивает БД и сервис через частые промежутки времени-и это плохая идея, если только это не критическая система безопасности (и даже тогда вы, вероятно, хотите справиться с вещами гораздо лучше с точки зрения дизайна, чем предполагает ваш вопрос!)