ASP.NET MVC Ajax Form OnFailure从未调用过!

时间:2009-05-21 15:41:39

标签: asp.net-mvc asp.net-ajax

Ajax请求如下:

在控制器操作方法中,我尝试添加ModelState错误以及抛出异常,但响应永远不会调用OnFailure。无论响应如何,它总是调用OnSuccess。可能是我在这里错过了什么。

问题:什么时候调用OnFailure js方法?任何样品将不胜感激。

由于

2 个答案:

答案 0 :(得分:12)

您需要从操作中返回HTTP错误状态代码。例如。 400,404,500。

尝试这样的事情:

throw new HttpException(404, "Not Found");

答案 1 :(得分:0)

根据MSDN definition,当HTTP响应状态不在200范围内时,将调用OnFailure。例如,如果它是永久重定向(308),临时重定向(307)未找到(404)或错误请求(400),则调用OnFailure方法。有关HTTP响应代码的完整列表,see this wikipedia article