Ссылки
http://msdn.microsoft.com/en-us/library/6tc47t75%28v=VS.80%29.aspx
http://msdn.microsoft.com/en-us/library/ms366730.aspx
Вопрос
Во 2-й ссылке именно под заголовком Create a Custom Membership Provider
вы заметите, что ониупомяните об этом
Вам потребуется создать пользовательский поставщик членства, который будет поддерживать как пользовательский тип пользователя членства, так и хранилище пользовательских данных членства.Методы GetUser и CreateUser провайдера настраиваемого членства могут быть написаны так, чтобы они возвращали объекты пользовательского типа настраиваемого членства.
ниже - пользователь настраиваемого членства с настраиваемыми полями
Пользователь настраиваемого членства
public class CustomMembershipUser : MembershipUser
{
//private fields for internal use
private bool _isMarried;
private bool _hasLicense;
private string _address;
private int _userId;
//public fields for use by end user
public int UserId
{
get { return _userId; }
set { _userId = value; }
}
...
Провайдер нестандартного членства
public class CustomMembershipProvider : MembershipProvider
{
.....
public override MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status)
{
throw new NotImplementedException();
}
....
Я сделал именно то, что мне сказали, вернул членство пользователя моего нестандартного типа, например
public override **CustomMembershipUser** CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status)
, нозатем IDE пожаловалась, что не может изменить тип возвращаемого значения при переопределении MembershipProvider.CreateUser .Так что же мне теперь делать,
- Создать другой метод с такими же параметрами и вернуть пользовательское членство пользователя?
- У меня нет необходимости в вопросе о пароле, полях с секретным вопросомкак мне от них избавиться?