public override MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer,
bool isApproved, object providerUserKey, out MembershipCreateStatus status)
{
try
{
if (string.IsNullOrEmpty(email))
{
email = username;
}
MembershipUser u = GetUserByOpenId(username, false);
if (u == null)
{
WebRequest request = HttpWebRequest.Create(Utility.NormalizeIdentityUrl(username));
request.Method = "HEAD";
var response = request.GetResponse();
u = NonOpenIdMembershiProvider.CreateUser(username, password, email, passwordQuestion, passwordAnswer,
isApproved, providerUserKey, out status);
LinkUserWithOpenId(username, u.ProviderUserKey);
return(u);
}
else
{
status = MembershipCreateStatus.DuplicateUserName;
}
}
catch (Exception ex)
{
status = MembershipCreateStatus.InvalidUserName;
}
return(null);
}