Mostrar mensaje de excepción al lado del cliente

En mi aplicación asp.net mvc, me gustaría mostrarle al usuario el mensaje de error que se utilizó para lanzar una excepción. La excepción ocurre en una solicitud ajax. He intentado esto:

En el archivo Global.asax.cs, tengo un controlador de error de aplicación global:

protected void Application_Error(object sender, EventArgs e)
{
    Exception exception = System.Web.HttpContext.Current.Server.GetLastError();

    // do something so that client side gets the value exception.Message
    // I have tried these, but no success
    HttpContext.Current.Response.StatusDescription = exception.Message;
    HttpContext.Current.Response.StatusCode = 1000;  // custom status code
}

En javascript, tengo un controlador global ajaxError:

$(document).ajaxError(function (xhr, props) {
    // show the message in the exception thrown on the server side
});

Traté de obtener el mensaje de excepción en JavaScript usandoprops.statusText, props.responseText, pero ninguno de ellos tenía el mensaje de excepción.

Mi pregunta: ¿Qué puedo hacer en elApplication_Error método para que pueda obtener el mensaje contenido enexception.Message a lo globalajaxError funcionar en el lado del cliente? Tenga en cuenta que puedo manejar fácilmente la excepción que ocurre en cualquier Acción específica en la que se produce una solicitud ajax, pero me gustaría crear un controlador de excepción global, que me permita lanzar una excepción con un mensaje desde cualquier parte de mi aplicación, y el mensaje de excepción se muestra al usuario en el lado del cliente.

Yo he tratadoesta, pero esto no resuelve mi problema, porque quiero usar jQuery globalajaxError, en lugar de manejar el error solo en una solicitud ajax específica. ¿Se puede modificar esto para lograr lo que quiero?

Respuestas a la pregunta(1)

Su respuesta a la pregunta