2014-06-18 6 views
1

프로젝트 WEB API 2를 작성하고 사용자가 "localhost/api/v1 /"또는 "localhost/api"와 같은 잘못된 URL을 사용하면 사용자 정의 형식으로 json 결과를 표시하고 싶습니다. 이것을 위해 나는 오류에 관한 메시지를 리턴 할 get 요청으로 ErrorController를 생성하려고 시도했다. 나는 WebApiConfig에 경로 설정을 추가웹 API의 오류 컨트롤러로 리디렉션

config.Routes.MapHttpRoute(
      "ErrorInApi", 
      "v{version}", 
      new {controller ="Error" }  
      ); 

나는 모든 잘못의 URL의 경우 오류 컨트롤러에 리디렉션 설정을 쓸 수 있습니까?

+0

이것을 읽으셨습니까? http://www.asp.net/web-api/overview/web-api-routing-and-actions/exception-handling#registering_exception_filters and this http://www.asp.net/web-api/overview/web-api-routing-and-actions/web-api-global-error-handling – vittore

+0

@vittore 아니, 감사합니다. – iphonecoder777

답변

0

웹 앱의 예외를 처리하는 데 대부분 exception filters을 사용하지만, 라우팅 중에 예외를 처리하는 데 OP를 사용하는 경우가 많습니다. 따라서 웹 API에서 제공하는 두 가지 새로운 기능, 즉 IExceptionLogger and IExceptionHandler을 사용하여 ExceptionContext의 인스턴스를 수신 할 수 있습니다. 링크 된 페이지는 이러한 핸들러와 로거의 샘플 구현을 제공합니다.