从ajax请求中抛出异常并捕获它

时间:2015-10-13 22:57:37

标签: asp.net-mvc

我正在尝试模拟ASP MVC中的异常管理,

这就是我所拥有的:

public JsonResult callit()
{
        throw new HttpException(400, "Bad Request");
}

然后我尝试这样称呼它:

$.ajax({
        type: 'GET',
        url: '@Url.Action("callit", "rat", new { area = "test" })',
        cache: 'false',
        error: function (request, status, error) {
            alert(request.responseText);
        }
});

但是我的应用程序在抛出异常时继续停止,除非我停止程序,否则我的错误没有被触发。我该怎么办?

1 个答案:

答案 0 :(得分:3)

不是抛出异常,而是返回HttpStatusCodeResult并将方法更改为ActionResult

public ActionResult callit() // or public HttpStatusCodeResult callit()
{  
    return new HttpStatusCodeResult(400, "Bad Request");
}