我是 ASP.NET 和 MVC 的新手。在我的控制器中,我抛出ArgumentException
了无效的用户输入。我喜欢客户端以 JSON 格式获取一些信息的事实。但我不想发送整个堆栈跟踪,只发送异常消息(其中包含对错误的有用的本地化解释)。
我该怎么做呢?
我见过一些Application_Error()
and FilterException
,但它们似乎都重定向到一个特殊的“错误”视图,而我想留在同一页面上,只是打印出一个带有用户友好解释的对话框。
我是 ASP.NET 和 MVC 的新手。在我的控制器中,我抛出ArgumentException
了无效的用户输入。我喜欢客户端以 JSON 格式获取一些信息的事实。但我不想发送整个堆栈跟踪,只发送异常消息(其中包含对错误的有用的本地化解释)。
我该怎么做呢?
我见过一些Application_Error()
and FilterException
,但它们似乎都重定向到一个特殊的“错误”视图,而我想留在同一页面上,只是打印出一个带有用户友好解释的对话框。
看看这个答案ASP.NET MVC Ajax 错误处理,如果你需要StatusCode
:
filterContext.HttpContext.Response.StatusCode = 500;
HttpContext.Response.StatusCode = 400
return new ContentResult{Content="My custom error"};
在这种情况下,ajax 会将响应视为错误状态,您可以指定自定义消息并从 response.responseText 属性获取它
$.ajax({
.....
error: function(e){
alert(e.responseText); // your error message
}
});