ASP.Net устанавливает Membership.Provider программно

Я хотел бы знать, можно ли установить поставщика членства по умолчанию (Membership.Provider) через код, а не через файл конфигурации.


person Alexander Beninski    schedule 12.07.2012    source источник
comment
Какова цель таких манипуляций?   -  person Johnny_D    schedule 12.07.2012
comment
Это может помочь. Вы можете добавить их в файл конфигурации, а затем выбрать, какие из них запускать во время выполнения. Я предполагаю, что вы также можете использовать свой собственный пользовательский класс, если хотите (конечно, если он наследуется от MembershipProvider)...stackoverflow.com/questions/10496647/   -  person Theo    schedule 12.07.2012
comment
Я думаю, что @Theo на ваш лучший выбор. Вы можете создать поставщика прокси-членства, который просто использует желаемого поставщика членства на основе любых ваших критериев.   -  person Jaime Torres    schedule 12.07.2012
comment
Мой сценарий довольно сложный. Спасибо всем за ваши ответы. Мне просто было интересно как-то настроить Membership.Provider с помощью кода. Теперь, когда я знаю, что это не может быть установлено императивом, я попытаюсь найти работу вокруг. Спасибо.   -  person Alexander Beninski    schedule 12.07.2012


Ответы (1)


Это не прямой подход к вашему вопросу. Вместо этого реализуйте настраиваемый поставщик членства и используйте контейнер IoC (для например, Enterprise Library Unity), чтобы внедрить желаемый класс во время выполнения. .

Например,

public override MembershipUser GetUser(string username, bool userIsOnline)
{
   var user = IoC.Resolve<IUserService>().GetUserByUsername(username, userIsOnline);
}
person Win    schedule 12.07.2012