ActionResult를 반환하는 컨트롤러 메서드를 만든 다음 끝에 View()를 호출하면 ViewResult에서 반환 된 결과가 PartialViewResult 기반의 ViewResult로 반환되도록 필터 (또는 시뮬레이션) 요청 조건에?MVC3 : 동작 자체의 코드 외부에서 결과 유형을 변경할 수 있습니까?
분명히 ViewResult 또는 PartialViewResult를 반환하는 컨트롤러 메서드 자체에 코드를 포함 할 수 있지만이 코드는 여러 곳에서 제공되므로 필터를 잘 사용하는 것처럼 보입니다. IResultFilter의 두 메서드에서이 작업을 시도해 본 결과 출력이 변경되지 않았습니다.
이것이 가능하지 않다면 기본 컨트롤러에 View 대신 호출 할 수있는 ViewOrPartial과 같은 몇 가지 메서드를 만드는 방법을 살펴 보겠습니다. 그러나 필터를 포기하기 전에 더 넓은 지혜를 찾고 싶습니다. 그것) 접근법.
감사합니다, 마태 복음
업데이트 : 그래서 지금 대린의 코드를 기반으로하고있다 내가 시도했던 어떤 사이에 적어도 하나 개의 차이가 나는 OnResultExecuting을 무시했다는 것 같습니다 (그리고 나는 또한 OnResultExecuted을 시도했다) Darin의 코드는 OnActionExecuted를 재정의합니다. 이상하게 보입니까 아니면 다른 것을 바라 볼까요? 작동하게되어 기쁘지만 IResultFilter 인터페이스에 연결하는 것이 더 합리적이라고 생각됩니다. 두 인터페이스의 의도를 더 자세히 살펴 봐야 할 것입니다.
! 누군가가 해결책을 제시 할 수 있기를 바랍니다. – Jared
절대적으로 'IActionFilter' 또는'IResultFilter'를 사용하여 결과를 변경할 수 있습니다. 그것을 적용하는 것을 기억 했습니까? 작동하지 않는 코드를 게시 할 수 있습니까? – Aaronaught
어리 석음 나는 그것을 삭제했다. 나는 Darin의 코드에서 작업하고 있지만, 내가 잘못한 것을 알지 못한다고 혼잣말을한다. –