Я смотрю на переработку и упрощение обработки ошибок в приложении, которое я поддерживаю. В настоящее время все наши страницы наследуются от созданного нами базового класса, который, в свою очередь, явно наследуется от System.Web.UI.Page. Внутри этого базового класса метод OnError в настоящее время переопределяется и, в свою очередь, вызывает MyBase.OnError, а затем вызывает один из наших пользовательских методов ведения журнала.
Я не вижу никаких преимуществ переопределения метода OnError, и я думаю, что было бы лучше позволить методу Application_Error в Global.asax позаботиться о необработанном исключении (его регистрации), а затем о разделе customErrors в config запускает процесс перенаправления пользователя.
При просмотре в Интернете кажется, что люди часто игнорируют этот метод, но я не вижу необходимости, и эта статья из MSDN заставляет меня думать так же.