나는 데이터베이스에서 데이터를 잡고보기 표시 사방이 패턴을 사용 저장소에 레코드가 존재하지 않는 경우는 어떤 경우인지, null을 반환하는 경우깔끔하고 처리 일반 오류
public ActionResult Index(int? id)
{
RequestViewModel model;
model = this.ClientRepository.GetRequest(id);
return View("~/Views/Requests/Index.aspx", model);
}
을, 모델이 null이기 때문에 내 페이지가 엉망이고 오류가 발생합니다.
죽음의 노란색 페이지 또는 일반적인 "오류가 발생했습니다"페이지 대신 친숙한 "요청 된 레코드를 찾을 수 없습니다"라는 메시지를 표시하고 싶습니다.
처리되지 않은 예외와 달리 "정상적인"오류를 처리하는 데 권장되는 패턴은 무엇입니까?
감사합니다,
릭
당신은 액션 필터를 쓸 수
이 나를 위해 작동합니다. 일부 페이지에 대한보다 구체적인 오류 메시지에 대한 제안 사항이 있습니까? – rboarman
@ rboarman, 네 액션 필터 안에 네가'null' 모델을 전달한 컨트롤러 액션을 정확히 알기 위해서'filterContext.RouteData.GetRequiredString ("action")'과'filterContext.RouteData.GetRequiredString ("controller")를 사용할 수있다. 보기 및이 정보를 기반으로 오류 메시지를 사용자 정의합니다. 'NotFound' 뷰는이 정보를 포함하는 뷰 모델에 강하게 입력 할 수도 있습니다. –