我想问一些关于.NET 成员资格的问题。当我尝试使用会员资格时,我遇到了一些问题。我遵循了微软网站给出的规则。刚刚在Web.config中做了一些设置如下
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider"
connectionStringName="MyConnectionString" minRequiredNonalphanumericCharacters="3"
requiresUniqueEmail="false" maxInvalidPasswordAttempts="3" requiresQuestionAndAnswer="false"
enablePasswordRetrieval="false"
enablePasswordReset="true"
minRequiredPasswordLength="7" applicationName="/"/>
</providers>
</membership>
然后我使用CreateUser
了会员制。调用该方法的所有参数都很好,但有时它返回状态为InvalidPassword
. 我不知道为什么它会返回状态,但有时它会成功创建用户。有人可以解释一下我哪里错了吗?这是我正在使用的功能:
MembershipUser newUser = Membership.CreateUser(ObjModel.FirstName, ObjModel.password, ObjModel.Email, null, null, true, out status);
//ObjModel.FirstName + ObjModel.LastName, ObjModel.LastName, ObjModel.password,ObjModel.Email ,null, null, true, out status);
Message = status.ToString();
if (status == MembershipCreateStatus.Success)
{
MembershipUserId = new Guid(Membership.GetUser(ObjModel.FirstName).ProviderUserKey.ToString());
Roles.AddUserToRole(ObjModel.FirstName + ObjModel.LastName, "Client");
}
最后还有一个问题:收到成功消息后,我想将此用户添加到角色,角色将是客户端。我应该如何使用它?我没有创建角色。什么时候应该创建角色?我们可以独立于其他表创建角色吗?如果我必须再创建一个会员用户,但它的角色应该是管理员等等?实际上,创建用户、创建角色和以编程方式添加用户角色的正确流程应该是什么?sql成员表中的应用程序ID是什么?请清除我所有的疑虑。我已经搜索并尝试了谷歌搜索,但仍有一些问题没有得到清除。请尽快帮助。