Asp.Net Futures RenderAction 메서드로 렌더링하는 일부 부분 동작이 있습니다. 리디렉션 중 일부는 리디렉션이 처리 된 후 리디렉션을 수행합니다.Asp.net MVC 2의 하위 작업에서 리디렉션 결과가 허용되지 않는 이유
내가 Asp.Net MVC 2 RC로 업그레이드 했으므로 "자식 작업은 리디렉션 작업을 수행 할 수 없습니다"라는 오류 메시지가 표시됩니다.
소스 코드를 체크 아웃하고 예외를 throw하는 줄을 발견했습니다. 이를 해결하기 위해 커스텀 리다이렉트 리서치 (RedirectResult)를 만들 수 있습니다. 그러나 그 전에 프레임 워크가 왜 그것을 허용하지 않는지 이해하고 싶습니다. 좋은 이유가 있어야하고 어쩌면해야하지 않을 것입니다.
누구나이 제한의 이유를 알고 있습니까? MVC는 이미 클라이언트에 뷰를 렌더링하기 시작했기 때문에
감사
:
이 문제를 해결하려면, 나는 모든 하위 작업에 리디렉션을 권한 부여 체크를 제거했습니다. 확장 성을 위해 관리자 페이지에서만 사용하기 때문에 하위 작업 컨트롤러에서 리디렉션을 유지하기로 결정했습니다. 내 자신의 ChildActionRedirectResult를 쓴 다음 ChildActionController 기반을 만들어 리디렉션 메서드를 재정의하여 내 자신의 결과를 사용했습니다. 나는 프런트 엔드 사용을 위해 이것을하지 않을 것이다. – Sruly"변경 사항이 저장되었습니다"라는 메시지와 확장 기능 관리를위한 관리자 페이지로 다시 연결되는 간단한보기 결과 만 반환되었습니다. 그것은 꽤 아니지만 트릭을 했어. –