В моем приложении ASP.NET Web Forms я пытаюсь создать свой собственный класс SQLMembershipProvider, чтобы переопределить ConnectionString во время выполнения. Но я получаю ошибку конфигурации: «Тип„ExtendRegv1.MyMembershipProvider“неоднозначно»Ошибка поставщика пользовательского членства ASP.NET Web Forms
Я создал следующий класс в папке App_Code ...
Мой заказ Membership Provider Класс
namespace ExtendRegv1
{
public class MyMembershipProvider :SqlMembershipProvider
{
public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
{
base.Initialize(name, config);
string connectionString = "Data Source=BSHEEHAN-PC\\SQLEXPRESS;Initial Catalog=ExReg_Default;Integrated Security=True";
FieldInfo connectionStringField = GetType().BaseType.GetField("_sqlConnectionString", BindingFlags.Instance | BindingFlags.NonPublic);
connectionStringField.SetValue(this, connectionString);
}
}
}
Web конфигурации:
<membership>
<providers>
<clear />
<add name="MyMembershipProvider" type="ExtendRegv1.MyMembershipProvider" connectionStringName="ApplicationServices" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" maxInvalidPasswordAttempts="3" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" applicationName="/" />
</providers>
</membership>
Спасибо, Бен
Не могли бы вы сделать класс частичного 'общественный частичный класс MyMembershipProvider' –
конечно другой экземпляр, что у вас возникли проблемы с должны были бы быть частичными тоже - где когда-либо, что является –