2013-01-08 1 views
1

WCF 데이터 서비스와 wpf 클라이언트가이를 소비합니다.try catch를 사용하여 DataServiceRequestException에서 복구

try catch 블록을 사용하여 클라이언트의 dataservice에 대한 각 호출을 포위했습니다. 다음은 제품을 만드는 예제입니다.

try 
     { 
      Product product = Product.CreateProduct(productName, productNumber); 

      context.AddToProduct(product); 
      context.SaveChanges(); 
     } 
     catch (DataServiceRequestException dataServiceRequestException) 
     { 
      Handle(dataServiceRequestException); 
     } 

이 모두 제대로 작동합니다. 예를 들어, 제품 번호가 이미 존재하는 경우 예외가 발생합니다. 내 질문은 그러한 예외가 발생했을 때 어떻게 클라이언트에서 복구합니까입니다. 즉, 어떻게 Handle() - 메소드를 구현해야 하는가? 예를 들어 오류 메시지의 내용이 포함 된 메시지 상자 만 표시하면 다음에 제품을 만들 때 동일한 오류가 발생합니다. 다시 말해, 컨텍스트가 오류가 있음을 잊어 버리게 만드는 방법은 무엇입니까? 나는 context를 찾고있다. clear(). context. 잊어 버려라.()하지만 그러한 method는 존재하지 않는다.

답변

1

트릭은 finally 절을 추가하고 컨텍스트를 다시 초기화하는 것이 었습니다.