Считается ли плохой практикой прямой вызов поставщика? - PullRequest
2 голосов
/ 31 октября 2011

Я внедряю Custom RoleProvider в .NET Membership-framework.Существующая функциональность требует небольшой доработки, поэтому я хочу реализовать свои собственные публичные функции, чтобы вызывать статический Roles-класс.

Вместо Object -> Roles -> RolesProvider Я бы выбрал Object -> RolesProvider

Будет ли это считаться плохой практикой?Единственная альтернатива текущей схеме баз данных - полностью отказаться от использования RoleProvider и реализовать собственную систему авторизации для авторизации.

Редактировать: чтобы уточнить, я уже реализовал пользовательский MembershipProvider, поэтому желание продолжать работатьв членстве-рамки довольно высоки.

1 Ответ

2 голосов
/ 03 ноября 2011

Каждый раз, когда вы обходите часть фреймворка или настраиваете его так, как это не было задумано, это может считаться плохой практикой . Целью платформы поставщиков членства ASP.NET является облегчение доступа к текущему поставщику через класс Roles.

Опасность «изогнуть» каркас в соответствии с вашими потребностями, вместо того, чтобы расширять его по назначению, такова: могут быть другие области в .net каркасе, конфигурации или инструментах вокруг функциональности членства в роли, которые делают это предположение и они могут больше не иметь смысла после ваших изменений и приводят в замешательство других участников вашего проекта . Инструмент администрирования веб-сайта ASP.NET является одним из примеров такого инструмента. Если кто-то будет использовать этот инструмент после ваших изменений, это может привести к повреждению вашего членства в ролях и сайта.

Если вы решите использовать этот подход, вам следует тщательно продумать, какие функции вы добавляете, и в конечном итоге спросить себя, действительно ли это необходимо. Если это так, вам лучше реализовать что-то совершенно нестандартное, чтобы избежать путаницы.

...