2017-01-13 2 views
0

나는 C# .Net을 사용하여 웹 서비스를 비동기 적으로 호출하고 타임 아웃을 추가하려고합니다. 시간 초과 예외를 올바르게 catch하는 방법을 알아낼 수 없습니다.웹 서비스 호출을위한 C# 캐치 시간 초과

매우 광범위하기 때문에 제네릭 예외를 사용하지 않을 것입니다. 특히 시간 초과 예외를 catch하고 사용자에게 제한 시간을 알리는 것이 좋습니다.

예외 유형을 인쇄하면 시간 초과가 발생하면 System.Net.WebException이 발생합니다.

타임 아웃 예외를 잡는 더 좋은 방법이 있습니까?

 HttpResponseMessage response = new HttpResponseMessage(); 

     HttpClient client = new HttpClient(); 
     client.Timeout = new TimeSpan(1); 

     client.BaseAddress = new Uri(dimURL); 
     client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 

     //Response Code 
     try 
     { 
      response = client.GetAsync(dimURL).Result; 
     } 
     catch (<CATCH TIMEOUT>) 
     { 

     } 
     catch (Exception e) 
     { } 
+1

가능한 복제본 [타임 아웃을 사용하는 웹 서비스의 경우 어떤 예외가 발생합니까?] (http://stackoverflow.com/questions/2470933/what-exception-is-thrown-if-a-web- 서비스 - 인스턴트 메신저 사용 시간 초과) – Backs

답변

0

WebException을 찾고 있습니다. Here은 이에 대한 MSDN 페이지입니다.