Попробуйте поместить метод Application_Error в Global.asax.cs следующим образом:
protected void Application_Error(object sender, EventArgs e)
{
// Get the exception object.
Exception exception = Server.GetLastError();
_Log.Error(exception.Message, exception);
// Clear the error from the server
Server.ClearError();
}
В строке _Log предполагается, что вы используете log4net или какую-либо другую среду ведения журналов, но вы можете сделать с ошибкой все, что захотите.
PS - В некоторых других комментариях есть некоторая дезинформация. Но у меня недостаточно представителей, чтобы комментировать их. Все приложения веб-служб IIS / WCF, которые я написал , будут завершать свою работу, если любой поток имеет необработанное исключение. Я не могу сказать, верно ли это для приложений ASP.Net.