http://msdn.microsoft.com/en-us/library/6tc47t75%28v=VS.80%29.aspx
http://msdn.microsoft.com/en-us/library/ms366730.aspx
In the 2nd link precisely under heading Create a Custom Membership Provider
you will note that they mention this
You will need to create a custom membership provider that supports both your custom membership user type, and your custom membership data store. The GetUser and CreateUser methods of the custom membership provider can be written to return objects of the custom membership user type.
below is my custom membership user with custom fields
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();
}
....
I did exactly what they told me to do, return membership user of my custom type like this
public override **CustomMembershipUser** CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status)
but then i was complained by the IDE that Cannot Change return type when overriding MembershipProvider.CreateUser. So what am i supposed to do now,
You need to return a MembershipUser
instance in the function which is the return type for it. Currently it isn't returning what it is supposed to return.
There is a good tutorial at codeproject : Custom Membership Providers. You might find it helpful in understanding where you aren't getting right.