В веб-приложение ASP.NET я определил следующие поставщика членства в web.config:requiresQuestionAndAnswer значение ЛОЖЬ в web.config, но RequiresQuestionAndAnswer верно во время выполнения
<membership>
<providers>
<add connectionStringName="MyServer" name="MyServer" type="System.Web.Security.SqlMembershipProvider"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
enablePasswordRetrieval="false" />
</providers>
</membership>
При запуске приложения в отладчик, свойство Membership.Provider.RequiresQuestionAndAnswer
- true
.
Почему? И как я могу это исправить?
Обновление: Ar tuntime, коллекция Membership.Providers
содержит два экземпляра провайдера, которые практически идентичны. Отличия:
- Первый провайдер имеет имя == «AspNetSqlMembershipProvider» и RequiresQuestionAndAnswer == истинный
- Второй провайдер имеет имя == «Мой сервер» и RequiresQuestionAndAnswer == ложные.
Теперь пытаясь выяснить, откуда идет первый.
Указывает ли имя поставщика в отладчике имя вашего провайдера («MyServer»)? –
@MeidanAlon имя поставщика в отладчике кажется «AspNetSqlMembershipProvider». В то же время, он показывает правильную строку соединения SQL, поэтому она выглядит так, как будто она правильная. – urig
Это странно, я бы попробовал добавить defaultProvider = «MyServer» внутри членства и в –