2016-06-01 1 views
2

나는 그렇게내 예외 처리기가 Sitecore.mvc.Pipelines에서 실행되지 않는 이유는 무엇입니까?

<mvc.exception patch:source="Pipelines.config"> 
<processor type="Northwestern.Core.Infrastructure.Pipelines.ExceptionErrorHandler, Northwestern.Core"/> 
<processor type="Sitecore.Mvc.Pipelines.MvcEvents.Exception.ShowAspNetErrorMessage, Sitecore.Mvc" patch:source="Sitecore.Mvc.config"/> 
</mvc.exception> 
처럼, 따라서 내 Sitecore.Pipelines에게 설정 파일을 수정하여 "Sitecore.Mvc.Pipelines.MvcEvents.Exceptions.ShowAspNetErrorMessage"을 무시하고, 우리의 공공 사이트에 대한 좋은 예외 메시지를 만들려고하고 있어요

여기 내 ExceptionErrorHandler 코드 :

namespace Northwestern.Core.Infrastructure.Pipelines 
{ 
    public class ExceptionErrorHandler : ExceptionProcessor 
    { 
     public override void Process(ExceptionArgs args) 
     { 
      var context = args.ExceptionContext; 
      var httpContext = context.HttpContext; 
      var exception = context.Exception; 

      // Return a 500 status code and execute the custom error page. 
      httpContext.Server.ClearError(); 
      httpContext.Response.StatusCode = 500; 
      httpContext.Server.Execute("/Error-Page"); 
     } 

    } 
} 

하지만, 나는 위의 코드 내부에 중단 점을 배치하고 그것은 결코 같은 파이프 라인을 추가 내 중단 점

+0

코드를 실행해야하는지 확인하기 위해 어떤 예외가 발생합니까? mvc.exception 파이프 라인에서 모든 유형의 예외가 처리되는 것은 아닙니다 (예 : 컨트롤러 생성이 처리되지 않음) – Anton

+0

리소스를로드하지 못했습니다. 서버가 500 (내부 서버 오류) 상태로 응답 함 –

답변

1

시도 안타 없습니다 :

<pipelines> 
     <mvc.exception> 
     <processor type="Sitecore.Mvc.Pipelines.MvcEvents.Exception.ShowAspNetErrorMessage, Sitecore.Mvc"> 
      <patch:attribute name="type">Northwestern.Core.Infrastructure.Pipelines.ExceptionErrorHandler, Northwestern.Core</patch:attribute> 
     </processor> 
     </mvc.exception> 
    </pipelines> 
+0

감사합니다. 이것은 도움이된다. –