2017-05-11 5 views
1

부분보기가 포함 된 기본보기가 있습니다. 오류가 발생하여 다른보기를 반환하는 다른 작업으로 리디렉션하는 HandleError가 있습니다. 부분보기에서 오류가 발생하면 부분보기 만 변경됩니다. 어떻게해야합니까? 컨트롤러 :HandleError 부분보기 동작으로 리디렉션됩니다. 부분보기 만 변경합니다.

protected override void OnException(ExceptionContext filterContext) 
{ 
    if (filterContext != null) 
    { 
     Exception e = filterContext.Exception; 
     Log.Error(e); 
    } 
    RedirectToAction("Login", "Start", new { authorityId = 1, TopUnit = "RRRRR", unitId = 1, SubUnitId = 1 }); 
} 

나는 모든 뷰가 변경됩니다 필요 부분 및 주요. 당신은 단지 변경 오류 부분보기에 말했듯이

+0

부분보기에서 오류가 발생하면 전체보기 대신 부분보기가 표시된다고합니까? – User3250

+1

오류가 나는 것을 의미합니다. 모든 뷰가 변경되고 부분 뷰 만 변경됩니다. – rikush

답변

0

, 당신은 주위의 작업 아래에 시도 할 수 :

OnException 리디렉션을 중간 작업을

protected override void OnException(ExceptionContext filterContext) 
{ 
    if (filterContext != null) 
    { 
     Exception e = filterContext.Exception; 
     Log.Error(e); 
    } 

    RedirectToAction("RedirectOnError", "Start", new { authorityId = 1, TopUnit = "RRRRR", unitId = 1, SubUnitId = 1 }); 
} 

만들기 부분보기 _RedirectToError.cshtml에 코드 아래로 로그인 폴더

<script> 
    window.location = '@Url.Action("Login", "Start",new { authorityId = 1, TopUnit = "RRRRR", unitId = 1, SubUnitId = 1 })'; 
</script> 

시작 컨트롤러에서

public ActionResult RedirectOnError(){ 
    return PartialView("_RedirectToError"); 
} 

RedirectOnError 당신은 전체보기로 로그인 리디렉션됩니다 실행되면.