我想在客户端使用jQuery处理所有服务器端错误。为此,为我的MVC3应用程序创建了一个处理属性的axception,如下所示:
public class JsonErrorHandlerAttribute : HandleErrorAttribute
{
public override void OnException(ExceptionContext filterContext)
{
filterContext.ExceptionHandled = true;
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
string result = jsSerializer.Serialize(new { error = filterContext.Exception.Message });
filterContext.HttpContext.Response.Write(result);
}
}
但是使用这种方法它只返回正常的json响应,结果为200 OK。 A不想在客户端解析它以确定它是否有错误。所以我的问题是抛出ajax错误的最佳方法是什么?
答案 0 :(得分:4)
将此添加到您的功能
HttpContext.Response.StatusCode = 500;
如果您使用jQuery ajax,这将引发错误事件,您可以做出反应。