ASP.NET MVC 4,JSON中的ajax和异常细节

时间:2012-10-04 06:42:28

标签: ajax asp.net-mvc error-handling asp.net-mvc-4

我是ASP.NET和MVC的新手。在我的控制器中,我在无效的用户输入上抛出ArgumentException。我喜欢客户端以JSON格式获取一些信息的事实。但我不想发送整个堆栈跟踪,只是发送异常消息(其中包含错误的有用的本地化解释)。

我该怎么做呢?

我见过一些Application_Error()FilterException,但他们似乎都重定向到一个特殊的“错误”视图,而我想留在同一页面上,只打印出一个对话框用户友好的解释。

2 个答案:

答案 0 :(得分:1)

请查看此答案ASP.NET MVC Ajax Error handling以及是否需要StatusCode

filterContext.HttpContext.Response.StatusCode = 500;

答案 1 :(得分:1)

HttpContext.Response.StatusCode = 400
return new ContentResult{Content="My custom error"};

在这种情况下,ajax会将响应视为处于错误状态,您可以指定自定义消息并从response.responseText属性中获取

$.ajax({
 .....
error: function(e){
  alert(e.responseText); // your  error message
}
});