2010-04-10 2 views
1

Должен признаться, что ненавижу членский провайдер. Реализация по умолчанию не очень подходит нормально, и я не видел до сих пор хорошую реализацию пользовательского поставщика членства, вероятно, потому что это не возможно :-)Почему поставщик членства не является общим?

Так что вопрос:

По вашему мнению : что является причиной того, что у вас нет членства/роли в качестве родового класса? Я имею в виду, почему Microsoft не выбрала такой подход.

EDIT

Читая ответ, я понял, что, возможно, это не было достаточно ясно, что я говорю о MembershipProvider и RoleProvider. НЕ о механизме аутентификации ядра ASP NET.

+0

Общее как в 'MembershipProvider '? Что будет 'T'? – dtb

+0

@dtb: Пользовательский пользовательский класс – StackOverflower

ответ

5

Наиболее очевидные причины, которые приходят на ум:

  • классов по умолчанию достаточны для большинства целей (в основном: управление пользователями, аутентификация и разрешений проверок);

  • Система уже расширяема через наследование (реализация IPrincipal).

  • Система членства была разработана для платформы .NET 1.1 до того, как были доступны дженерики.

+0

@Aaronaught: Спасибо за ваш ответ. Методы поставщика членства возвращают экземпляр MemberhipUser. если вы хотите вернуть что-то еще, вы должны наследовать от этого класса и вывести его за пределы. Никакой метод не возвращает интерфейс :-( – StackOverflower

+0

@Timmy: Возможно, вам стоит прочитать некоторую документацию. Http://msdn.microsoft.com/en-us/library/aa480476.aspx – Aaronaught

+0

@Aaronaught: Еще раз спасибо. связан с MemberhipProvider? – StackOverflower

Смежные вопросы