После просмотра нескольких SO д/а я следующее:Почему CustomeMembershipProvider не вызвано?
public class CustomMembershipProvider : SimpleMembershipProvider
{
public override string CreateUserAndAccount(string userName, string password, IDictionary<string, object> values)
{
// code to insert data into UserAccounts and UserProfiles tables
// using simple sqlconnections
}
}
таблицы базы данных являются следующие:
CREATE TABLE UserAccounts
(
UserNumericId INT NOT NULL IDENTITY PRIMARY KEY,
LoginName VARCHAR(10) NOT NULL,
Password VARCHAR(100) NOT NULL,
)
CREATE TABLE UserProfiles
(
UserNumericId INT NOT NULL PRIMARY KEY,
DisplayName VARCHAR(100) NOT NULL,
PrimaryEmail VARCHAR(80) NOT NULL UNIQUE,
)
Web Config имеет
<membership defaultProvider="CustomMembershipProvider">
<providers>
<clear/>
<add name="CustomMembershipProvider" type="Helpers.CustomMembershipProvider, assembly" />
</providers>
</membership>
И в global.asax Lazyinitialzation с использованием
public class SimpleMembershipInitializer
{
public SimpleMembershipInitializer()
{
if (!WebSecurity.Initialized)
WebSecurity.InitializeDatabaseConnection("ApplicationServices", "UserAccounts", "UserAccountId", "LoginName", autoCreateTables: false);
}
}
Тем не менее, когда я звоню из моего действия Регистрация контроллера следующее заявление
WebSecurity.CreateUserAndAccount(model.UserName, model.Password, new { DisplayName= model.DisplayName, PrimaryEmail = model.PrimaryEmail});
точку останова в моем настраиваемого поставщика не получить удар. Может кто-нибудь, пожалуйста, помогите мне?
Ваш CustomMembershpProvider действительно в пространстве имен Помощники и сборка название «сборка», как показано в вашем web.config? –