protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
//在登录过程中,程序自动使用login.aspx进行拦截
//验证用户通过后,自动返回拦截的位置
if (Membership.ValidateUser(this.TextBox1.Text, this.TextBox2.Text))
{
this.Session["xh"] = this.TextBox1.Text;
FormsAuthentication.RedirectFromLoginPage(this.TextBox1.Text, false);
}
}
Membership用法详解用户与角色管理在asp.net2.0中是通过Membership和Roles两个类来实现的。Membership:用户成员账号管理,用户名、密码、邮箱等 Roles:负责用户和群组之间关系管理。 l 属性: 1) 2) 3) 4) 5) 6) 7) 8) 方法: 1) 2) DeleteUser():从数据库删除用户 3) 4) UpdateUser():更新用户信息 5) 6) 7) 8) 9) 10) l 负责管理与更新Membership表中的相关资料。别把MembershipUser类与Membership类混了,实际上是同MembershipUser处理完成后交由Membership处理。如: 1) 2) 3) 改变密码提示问题与答案 4) 5) 设置是否允许用户能够被验证 属性: 1) 2) 3) 4) 5) IsOnLine:指出用户目前是否在线 6) 7) 8) 9) 10) 11) 方法: 12) 13) 14) 15) 16) l 方法: 1) 2) 3) 4) 5) 6) DeleteRole():删除角色 7) 8) 9) 10) 11) 12) 13) 14) 15) 代码实现(1) 创建用户: MembershipCreateStatus Membership.CreateUser(txtUid.Text, txtPwd.Text, txtEmail.Text, Response.Write(mc.ToString()); 删除用户: if Response.Write("OK"); else Response.Write("Error"); 修改用户信息: if { MembershipUser user = user.Email = txtEmail.Text; Membership.UpdateUser(user); Response.Write(user.Email.ToString()); } 验证用户登录信息 bool isok if { FormsAuthentication.SetAuthCookie(txtUid.Text, Response.Write("OK"); } else { Response.Write("Error"); } 获取登录用户的信息 if { MembershipUser myuser = if (myuser != null) { Response.Write(myuser.CreationDate); Response.Write(myuser.Email); Response.Write(myuser.IsLockedOut); Response.Write(myuser.IsOnline); Response.Write(myuser.PasswordQuestion); Response.Write(myuser.UserName); } } 根据密码问题的答案返回用户密码 if { MembershipUser user = txtPwd.Text = } 修改用户密码 if { MembershipUser user = user.ChangePassword(txtPwd.Text,txtPWd2.Text); Response.Write(user.GetPassword(txtAnswer.Text)); } 解锁用户 MembershipUser bool b = Response.Write(b+" 拒绝用户登录 MembershipUser user = user.IsApproved = Membership.UpdateUser(user); Response.Write(user.IsLockedOut); 允许用户登录 MembershipUser user.IsApproved = Membership.UpdateUser(user); Response.Write(user.IsLockedOut); 根据用户名或邮箱来检索用户 MembershipUserCollection switch(listType.Text) { case users = Membership.FindUsersByName(txtFind.Text); if { } else { } break; case users = Membership.FindUsersByEmail(txtFind.Text); if { } else { } break; } 代码实现(2) 加载所有用户 MembershipUserCollection listUser.DataSource = listUser.DataBind(); 加载所有角色 string[] role = listRole.DataSource = listRole.DataBind(); 添加新角色 Roles.CreateRole(txtRole.Text); 删除角色 Roles.DeleteRole(txtRole.Text); 将一个用户添加到一个角色 Roles.AddUserToRole(listUser.Text, 将一个用户从一个角色中移除 Roles.RemoveUserFromRole(listUser.Text, 将一个用户加入到多个角色中去 int n = foreach (ListItem li in listRole.Items) { if (li.Selected) n++; } string[] roles = new string[n]; int i=0; foreach(ListItem li in listRole.Items) { if(li.Selected) { roles[i++] = } } Roles.AddUserToRoles(listUser.Text, roles); 将一个用户的所有角色移除 string[] Roles.RemoveUserFromRoles(listUser.Text,str); 将多个用户加入到一个角色中去 int n = 0; foreach (ListItem li in { if (li.Selected) } string[] users = new int i=0; foreach (ListItem li in { if { users[i++] = } } Roles.AddUsersToRole(users,listRole.Text); 将一个角色中的所有的用户移除 string[] Roles.RemoveUsersFromRole(users, 将多个用户加入到多个角色 int n = 0; foreach (ListItem li in listUser.Items) { if (li.Selected) n++; } string[] strUser = new n = 0; foreach (ListItem li in { if (li.Selected) } string[] strRoles = new for (int i = 0; i < listUser.Items.Count; { strUser[i] = } for (int i = 0; i { strRoles[i] = listRole.Items[i].Text; } Roles.AddUsersToRoles(strUser, strRoles); 1.创建用户...string userName = txtUsername.Text; } |