问题描述
比如有一个Get方法,publicvoidGet(intid){}调用时传入"a",就会抛出异常,因为我要处理异常信息,返回给客户端自定义格式的错误,我想问下这种异常在哪里获取?
解决方案
解决方案二:
protectedoverridevoidOnException(ExceptionContextfilterContext){if(filterContext.ExceptionisSystem.ArgumentException){filterContext.ExceptionHandled=true;//自定义...}else{base.OnException(filterContext);}}
解决方案三:
引用楼主ZZtiWater的回复:
比如有一个Get方法,publicvoidGet(intid){}调用时传入"a",就会抛出异常,因为我要处理异常信息,返回给客户端自定义格式的错误,我想问下这种异常在哪里获取?
你这个是重写Controller吧?我现在做的webapi,我是这样写的,不过不起作用,只对Action内部有效publicclassApiExceptionFilterAttribute:ExceptionFilterAttribute{publicoverridevoidOnException(HttpActionExecutedContextcontext){...elseif(context.ExceptionisArgumentException){context.Response=newHttpResponseMessage{StatusCode=HttpStatusCode.InternalServerError};varexception=(ArgumentException)context.Exception;context.Response.Content=newStringContent(ErrorCode.ParamError.ToJson(context.Exception.Message+context.Exception));}...}
解决方案四:
我去,引用错了!不好意思!
解决方案五:
就是用异常过滤器,貌似解决了?
解决方案六:
引用3楼ZZtiWater的回复:
我去,引用错了!不好意思!
没解决,我是说我的回复引用错了!