Как показать или скрыть элементы управления на основе ролей -ASP.NET MVC 4 Razor

Я работаю над приложением ASP.NET MVC 4. У меня есть панель инструментов, и мои группы пользователей будут основаны на домене Windows. Поэтому я использую аутентификацию WIndows для аутентификации пользователей. Я создал примеры приложений, которые используют пользовательскую аутентификацию, переопределяя функции AuthorizeAttribute, ActionFilterAttribute. Хороший ли это подход?

  1. Which attribute is best used for authentication ?

У меня есть приборная панель. Поэтому мне нужно показать или скрыть элементы управления на основе ролей. Предположим, что если есть 3 сетки (таблица ), если администратор входит в систему, он может видеть 3 сетки (таблицы ). Но если пользователь службы поддержки вошёл в систему, он может видеть только 2 сетки (и таблицу ).

Мой план состоит в том, чтобы создать частичные представления для каждой сетки, поэтому для каждого частичного представления будет действие и контроллер. Будет база данных, и в ней я укажу действия, которые может выполнять каждая группа. Так что я могу фильтровать запросы.

2 How can I hide or show the partial views based on roles ?.

Я попробовал несколько ссылок SO, но все они говорят о 2,3 ролях, и это было жестко запрограммировано. В моем случае роли могут различаться, и мы используем db для настройки доступа для ролей.

Заранее спасибо.

17
задан kbvishnu 6 August 2012 в 14:08
поделиться