我正在尝试实现通用错误处理。
public partial class SomePage : System.Web.UI.Page
{
//...
[WebMethod()]
public static int SomeMethod()
{
//... some code
//... exception
}
//...
}
可以使用 global.asax 处理常规请求,但静态 WebMethods 不会通过 Application_BeginRequest 或 Application_Error。我尝试编写一个属性,从 ExceptionFilterAttribute 派生并使用 OnException 覆盖,但它也不起作用。
那么谁来处理这些请求呢?
客户端调用是通过下面的 jQuery ajax 请求进行的:
$.ajax({
type: "POST",
url: "SomePage.aspx/SomeMethod",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
someVar = response.d;
},
error: function (a, b, c) {
console.log(a);
// handle
}
});