Об аутентификации, правилах доступа и нескольких видах - PullRequest
0 голосов
/ 11 января 2012

В моем проекте ASP.Net MVC3 у меня есть 3 роли; менеджер, администратор, суперадмин - хотя в будущем их может быть больше. Существуют также различные представления с таблицами и полями (менеджер может видеть 5 полей таблицы, admin 7, где 2 из них имеют кнопки, такие как принять и отклонить (для торговли товарами в интернет-магазине), а superadmin может видеть все поля + больше кнопок управления, таких как редактирование строки, удаление и т. д.).

Теперь у меня есть 3 вида для них всех и 3 контроллера, это не лучшее использование принципа СУХОЙ. Я хотел бы спросить вас, лучше ли сделать одно представление для всех ролей и использовать правила доступа для полей в таблице, добавляя строки ячеек, историю и другие представления?

Спасибо.

1 Ответ

0 голосов
/ 11 января 2012

Я бы предпочел один просмотр с логикой, чтобы определить содержание, отображаемое для каждой роли. Это удобнее в обслуживании, а также более тестируемо, поскольку будет проще написать тест для проверки выходных данных для каждой роли.

Менее ясна проблема, в которой логика должна быть обусловлена ​​содержанием для каждой роли. Я бы держал это подальше от Модели и поместил бы это в контроллер или метод во ViewModel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...