protected Override voidonexception (Exceptioncontext filtercontext) {//exception logging is done here, either to a database or to text, or to other logging components. //get the exception by Filtercontext.exception. filtercontext.exceptionhandled =true;//organization Web. config Configuration customerror processing stringRequestType = FilterContext.HttpContext.Request.RequestType.ToString ();//GET request TypeUrlhelper URL =NewUrlhelper (Filtercontext.requestcontext); //determines whether a GET request, if it is a GET request, jumps to the specified page, if not return JSON if(Requesttype.toupper () = ="GET") {Filtercontext.result=NewRedirectresult (URL. Action ("Error","Error"));//jump to a new page } Else{Filtercontext.result=NewJsonresult () {Data =New{ErrorCode =2, message = FilterContext.Exception.Message}, Jsonrequestbehavior = Jsonrequestbehavior.allowget};//return JSON data } //executing a onexception in a base class//base. Onexception (filtercontext);}
ASP. NET rewrite onexception return JSON or jump to new page