Ограничение доступа к «функциональным модулям» в ASP.NET MVC - PullRequest
1 голос
/ 20 августа 2010

Я создаю сайт в ASP.NET 4 и MVC2, который будет иметь расширенные функции, такие как SMS-уведомления, которые будут доступны только для платных подписчиков.У меня также есть дополнительные модули для таких вещей, как инвентаризация, транзакции и т. Д.

Я уже использую стандартный членство MembershipProvider и склоняюсь к использованию ролей tp для предоставления этой функциональности.то есть: иметь роль «SMSModule», которую получает пользователь, если он платит за услугу SMS-надстройки

Это упрощает работу контроллеров с небольшим оформлением атрибутов, но проблема, с которой я сталкиваюсь, заключается в том,быть кучей условного кода, разбросанного по моим представлениям и т. д.

Есть ли лучший способ обеспечения подхода в стиле «модуля» в .NET 4 и MVC2 ???

Ответы [ 2 ]

1 голос
/ 13 марта 2011

Вы можете добавить свою условную логику для просмотра моделей, использовать контроллеры для правильной установки моделей представления, и это должно быть хорошо ... Иногда вы должны иметь операторы if внутри представлений, даже если они не такие элегантные. Если, конечно, вы не используете движок вида вроде spark, тогда ваши операторы if помещаются в другое ненавязчивое место, но они все еще существуют! Вы всегда можете создать HtmlHelpers и установить код на стороне сервера, основываясь на соответствующем логическом отображении ...

0 голосов
/ 22 августа 2011

FWIW В итоге я использовал комбинацию дескрипторов в Spark View Engine вместе с пользовательским поставщиком функций и связанным ActionFilter

...