ASP MVC 3 Basic Зарегистрироваться / Войти / Выйти на другой стол
Я видел модель и контроллер по умолчанию "Account", которая поставляется по умолчанию со стандартным приложением MVC3, однако, когда я сначала создал базу данных.
Я уже спроектировал свою собственную таблицу "Пользователи", которую я хотел бы реализовать при помощи простой регистрации / входа / выхода.
Есть ли хорошие уроки, показывающие мне, как сделать это или какой-либо совет от себя? Большое спасибо за ваше время.
2 ответа
Это просто. Создайте свой класс, полученный из абстрактного класса MembershipProvider
public class MyMembershipProvider : MembershipProvider
{
}
Больше на: http://msdn.microsoft.com/en-us/library/system.web.security.membershipprovider.aspx
Сделать то же самое для RoleProvider
если тебе это нужно
public class MyRoleProvider : RoleProvider
{
}
Больше на: http://msdn.microsoft.com/en-us/library/system.web.security.roleprovider.aspx
Реализуйте только методы, которые вы будете использовать, и все. Начать с ValidateUser()
( http://msdn.microsoft.com/en-us/library/system.web.security.membershipprovider.validateuser.aspx)
Не забудьте указать своего провайдера, то есть в этом случае MyMembershipProvider
в web.config в <system.web> <membership> <providers>
раздел.
Не усложняйте это, так как почти в каждом уроке / записи в блоге это делается, это простая задача.
ОБНОВИТЬ:
В RoleProvider вам нужно только реализовать
public override string[] GetAllRoles()
{
return RoleRepository.GetAllRoles();
}
public override string[] GetRolesForUser(string username)
{
return RoleRepository.GetRolesForUser(username);
}
public override bool IsUserInRole(string username, string roleName)
{
return RoleRepository.IsUserInRole(username, roleName);
}
В MembershipProvider вам нужно только реализовать
public override bool ValidateUser(string username, string password)
{
return MembershipRepository.IsUserValid(username,password);
}
Вы всегда можете использовать свой собственный ValidateUser()
метод независимо от метода в MembershipProvider.
Вы можете реализовать свой собственный поставщик членства:
http://www.asp.net/web-forms/videos/how-do-i/how-do-i-create-a-custom-membership-provider
http://theintegrity.co.uk/2010/11/asp-net-mvc-2-custom-membership-provider-tutorial-part-1/