65.9K
CodeProject is changing. Read more.
Home

ASP.Net MembershipProvider : Auto generate password without nonalfanumaric character

starIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

1.00/5 (3 votes)

Jan 6, 2008

CPOL
viewsIcon

30080

downloadIcon

271

Using ASP.Net MembershipProvider Auto Generate Password with does not contain nonalfanumaric character

Introduction

In an application that uses Asp.Net MembershipProvider, in the membership process if you don't want to use character except letter in your generated password that send to your given e-mail address, you have to follow below steps.
Unfortunately it seems complicated and in my opinion there is a design mistake related MembershipProvider.

Using the code

It requires some changes with CreateUserWizard control :
For this create new web control derived by CreateUserWizard control and override Password property.

    ToolboxData("<{0}:MyCreateUserWizard runat="server"></{0}:MyCreateUserWizard>")]
    public class MyCreateUserWizard : CreateUserWizard
    {
        
        public MyCreateUserWizard()
            : base()
        {
        
        }

        private string generatedPassword = string.Empty;

        public override string Password
        {
            get
            {
                if (string.IsNullOrEmpty(generatedPassword))
                    generatedPassword = GeneratePassword();

                return generatedPassword;
            }
        }
        

    }
        

And if you want same feature with PasswordRecovery control, you have to create new class derived by System.Web.Security.SqlMembershipProvider and override GeneratePassword method.

 public class MyMembershipProvider : System.Web.Security.SqlMembershipProvider
    {       

        public MyMembershipProvider()
            : base()
        {
        }
                
        public override string GeneratePassword()
        {
            ....
        }
    }