2009-09-08 1 views
0

ASP.NET MVC (future)에서 Html.RenderAction을 사용하여 다른 페이지에 모듈을 표시하고 있습니다. 모듈이 자신이 속한 페이지를 인식하도록 (설정 및 로깅 목적으로).내 컨트롤러를 호출 한 컨트롤러 찾기. 또는 컨트롤러/액션 스택을 가로 질러

현재 컨트롤러에서 컨트롤러/액션 - 스택을 가져 오는 방법이 있습니까?

ActionInvoker에서 Controller라는 컨트롤러에있는 DescriptorCache라는 것을 발견했습니다.이 컨트롤러에는 개인 정보로 정의되어 있기 때문에 컨트롤러에 액세스 할 수없는 캐시라는 정보가 있습니다. 당신이 수 m

+0

IMO 이렇게하면 뷰가 컨트롤러를 인식하기 때문에 MVC 패턴을 깨뜨릴 것입니다. – Gregoire

답변

1

:

당신의 도움이 을 감사합니다? 네. 너? 지옥 아니야. 조건부 렌더링이 필요한 경우 데이터를 뷰의 모델에 넣습니다. 뷰 모델의 일부로 호출 스택을 사용하지 마십시오!

+0

글쎄,이 것은 뷰 자체에서이 정보를 사용하고 싶지 않다는 것입니다. Html.RenderAction 메서드에 의해 호출되는 "하위 뷰"에 대한 컨트롤러에 대해 말하고 있습니다. 상황은 다음과 같습니다. 나는 다른 페이지에 배치되는 모듈을 가지고 있고, 모듈은 그들이 속한 페이지를 알아야한다. 이 정보는 모듈의 뷰 모델에 넣을 수 있지만 가능한 한 자체 포함 된 것으로 만들고 싶기 때문에 배치 된 위치를 선택하도록하고 싶습니다. – iammaz

관련 문제