I have tried for a couple of hours to check whether the user account is locked or not since Membership.GetUser(Login1.UserName)
always returns null.
Here is my code where I check the value in "OnLoginError" method:
protected void login_inError(object sender, EventArgs e)
{
MembershipUser user = Membership.GetUser(Login1.UserName);
//Membership.Providers["SqlProvider"].GetUser(Login1.UserName, false);
if (user == null)
{
Login1.FailureText = "sorry there is no such username";
}
else
{
if (!user.IsApproved)
{
Login1.FailureText = "your account has been approved yet!!";
}
else if (user.IsLockedOut)
{
Login1.FailureText = "your account has been blocked";
}
else
{
Login1.FailureText = "sorry your password incorrect";
}
}
}
Here is provider config:
<membership defaultProvider="SqlProvider">
<providers>
<!-- Add the new SqlMembershipProvider-->
<add name="SqlProvider" type="System.Web.Security.SqlMembershipProvider"
connectionStringName="ConnectionString" maxInvalidPasswordAttempts="3"
passwordAttemptWindow="1"
passwordFormat="Hashed"
applicationName="WebSite5"/>
</providers>
</membership>