Да, вы можете!Мы сделали это успешно.
Вы можете сделать это несколькими способами, один из них - ввести любые свойства, которые вам нужны, в экземпляр поставщика (в этом примере предполагается, что вы используете SqlMembershipProvider
, и показано, как вы можете это сделать)введите строку подключения, но вы можете взглянуть на источник OdbcMembershipProvider
, чтобы понять, как это сделать самостоятельно):
public static void InjectConnectionStringIntoSqlMembershipProvider(SqlMembershipProvider provider, string connectionString) {
Type t = typeof(SqlMembershipProvider);
FieldInfo fi = t.GetField("_sqlConnectionString", BindingFlags.NonPublic | BindingFlags.Instance);
if (fi == null) throw new InvalidOperationException("Invalid private identifier.");
fi.SetValue(provider, connectionString);
}
Или вы можете создать своего собственного провайдера, создав класскоторый наследует MembershipProvider
.
Или, как предлагает ссылка @Andomar, вы можете наследовать от любой реализации MembershipProvider
(например, SqlMembershipProvider
, среди прочих), чтобы получить то, что вы хотите.1013 *
Мы сделали все три года, в зависимости от того, сколько потребовалось для настройки.