다음 코드 한 I :함수 내에서 예외 유형을 어떻게 확인할 수 있습니까?
catch (ServiceException e) { se(e); return View("CreateEdit", vm); }
catch (Exception e) { ex(e); return View("CreateEdit", vm); }
return RedirectToAction("ShowSummary", new {
ds = vm.Meta.DataSourceID
});
protected void se(ServiceException e) {
ModelState.Merge(e.Errors);
}
protected void ex(Exception e) {
Trace.Write(e);
ModelState.AddModelError("", "Database access error: " + e.Message);
}
내가 같은이를 변경하려면 :
catch (Exception e) { processException(e); return View("CreateEdit", vm); }
내가 일] ProcessException 기능에 코드를 추가 할 수있는 방법은 그 수있을 것입니다 어떤 종류의 예외인지 확인한 다음 ServiceException 인 경우 인지 아니면 일반적인 예외인지에 따라 조치를 취하시겠습니까? 난 그냥 내 모든 예외 처리를 한 장소에 넣고 싶습니다 다음 전화.
나는 'is'가 문제 상황에 대해 가장 쉬운 방법이라는 데 동의합니다. 스위치가 많으면 스위치가 더 좋을 것입니다. –