Два экземпляра членства провайдера в ASP.NET
Я нахожусь между некоторым приложением и нашел один сценарий, который я не могу пройти.
В моем веб-сайте ASP.NET 2.0 я реализовал членство для управления пользователями. В настоящее время у меня есть два провайдера, зарегистрированных в файле web.config.
- Поставщик для Active Directory - по умолчанию
- Поставщик, связанный с базой данных SQL
Как я уже упоминал, мой поставщик по умолчанию - поставщик активных каталогов. Мой сервер только что отключился для обслуживания, и я обнаружил, что мой веб-сайт начал генерировать исключения. Поскольку мой поставщик по умолчанию является активным каталогом один, когда я пытаюсь получить вторичного поставщика, который на самом деле для базы данных SQL,
var oProvider = Membership.Providers ["MyMembershipProvider"];
мое приложение выдает ошибку "Сервер не работает".
Я подозреваю, что когда я выполняю вышеуказанную строку кода, членство создает экземпляры для всех зарегистрированных провайдеров.
Вопрос:
Есть ли способ, которым я могу создать объект конкретного поставщика, зарегистрированного в web.config и избежать этой ошибки?
Как я могу создать динамический объект провайдера из имени провайдера?
Как я могу игнорировать провайдеров, которые не доступны или не работают?