2009-07-31 7 views
2

ul 태그와 li 태그를 사용하는 표준 메뉴가 있습니다. 그리고 내 데이터베이스에서 나는 '인증서'필드가있는 테이블 Users를 가지며이 '인증서'의 값에 따라 사용자는 메뉴의 일부 항목을 보거나 표시하지 않습니다.ASP.NET MVC ActionFilters를 사용하여 다른 메뉴 렌더링

일부 텍스트를 읽었으며 ActionFilters을 사용해야합니다. 이게 옳은 거니?

그래서 어떤 사용자가 액세스 중인지에 따라 다른 메뉴를 렌더링 할 수 있습니까?

감사합니다.

답변

2

futures 어셈블리에서 소개하는 Html.RenderAction 메서드를 확인하십시오. 그들은 매우 깨끗한 방식으로 행동 방법을 렌더링 할 수 있습니다. 즉, 렌더링 할 수있는 메뉴 항목에 대한 모든 로직을 처리하는 MenuController (예를 들어)를 가질 수 있습니다. 그런 다음 뷰에 단순한 데이터 구조를 전달할 수 있으며, 그 책임은 해당 데이터 구조를 렌더링하는 것입니다. 매우 깨끗합니다.

+0

선물 계약서를 다운로드했지만 제대로 작동하지 않습니다. 그것은 오직 RenderPartial만을 보여주고 있습니다 ... RenderAction에 대해서는 아무 것도 없습니다 – AndreMiranda

+0

web.config의 pages/namespaces 노드에 를 추가해야합니다. 그러면 선물에서 추가 기능과 확장 방법을 가져올 것입니다. –

+0

2016 년에 대한 업데이트를 제공하십시오. –

2

대신 RenderPartial 또는 RenderAction을 사용하는 것이 좋습니다. ActionFilters는 그런 종류의 것에는 적합하지 않습니다. this article을보십시오.

+0

2016 년에 대한 업데이트를 제공하십시오. –

관련 문제