WCF 서비스 호출을 만드는 전통적인 ASP.NET 응용 프로그램을 만들고 있습니다.ASP.NET에서 WCF 예외를 처리하는 방법
WCF 호출을 시도하고 현재 페이지의 맨 위에 오류 세부 정보를 표시해야합니까? 오류로 인해 사용자가 사용자 정의 오류 페이지로 리디렉션됩니다. 또는 IIS/.NET 프레임 워크를 그대로 두십시오.
향후 개발자를 혼란시키지 않는 접근 방법은 어느 것입니까?
WCF 서비스 호출을 만드는 전통적인 ASP.NET 응용 프로그램을 만들고 있습니다.ASP.NET에서 WCF 예외를 처리하는 방법
WCF 호출을 시도하고 현재 페이지의 맨 위에 오류 세부 정보를 표시해야합니까? 오류로 인해 사용자가 사용자 정의 오류 페이지로 리디렉션됩니다. 또는 IIS/.NET 프레임 워크를 그대로 두십시오.
향후 개발자를 혼란시키지 않는 접근 방법은 어느 것입니까?
죽음의 노란색 화면에 절대로 있지 않습니다. 오류에 대한 자세한 정보는 해커가 사이트를 해독 할 수 있음을 알려줍니다.
서비스 요청없이 페이지를 표시 할 수없는 경우 사용자 지정 오류 페이지로 리디렉션하십시오.
기능의 핵심이 아닌 페이지에 정보의 일부만 누락되는 경우 사용자에게이 특정 정보를 즉시 사용할 수 없다는 메시지를 표시하는 것이 좋습니다.
WCF 호출이 예외를 throw 할 수 있고 어떤 예외 유형을 사용할 수 있는지 알고 싶다면 예외를 catch하고 적절한 작업을 수행해야합니다. 일반적으로 사용자에게 작업이 실패하도록하는 오류를 알리고 사용자 또는 기술 지원부에서 추가 검토를 위해 예외 세부 정보를 기록하는 것이 좋습니다.
이것은 응용 프로그램 요구 사항에 따라 다릅니다. 웹 서비스 호출이 실패하면 계속 처리 할 수 있습니까? 그렇지 않은 경우 예외를 기록하고 사용자를 500 페이지로 리디렉션해야합니다. 이렇게하려면 global.asax에서 Application_Error
메서드를 사용합니다. 처리를 계속할 수 있으면 웹 서비스 호출을 try/catch하고 적절한 FaultException을 처리해야합니다. 고객이 프로덕션에서 노란색 화면을 보지 못하게해야합니다.