摆脱Login控件,自己定义登录操作
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; } |
摆脱Login控件,自己定义登录操作的更多相关文章
- Asp.Net2.0下C#环境 Login控件实现用户登录
原文:Asp.Net2.0下C#环境 Login控件实现用户登录 一.前台显示效果 二.前台代码 <asp:Login ID="Login1" run ...
- login控件“您的登录尝试不成功。请重试”的解决方法
原文:login控件"您的登录尝试不成功.请重试"的解决方法 遇到login控件“您的登录尝试不成功.请重试”报错之后,在网上找了很久,也按照如下帖子设置了 application ...
- asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功。请重试。 Login控件
原文:asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功.请重试. Login控件 现象1.asp.net使用自定义sql server身份验证数据库,在A机器新增用户A,可以登录成 ...
- ASP.NET关于Login控件使用 (转)
分类: C# 2011-02-21 10:38 4599人阅读 评论(0) 收藏 举报 loginasp.netstringurlserverbutton 今天上网找了一些关于Login控件的使用资料 ...
- asp.net Login控件基本属性及事件说明
原文:asp.net Login控件基本属性及事件说明 Login系列控件是微软为了简化我们的开发过程,为我们进行常规的安全开发提供块捷途径. Login系列控件包含下列控件: Login 登录控件 ...
- ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件
原文:ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件 Login控件它是属于Membership服务的一部分,必须配置Membership提供程 ...
- Login控件尝试
新建web项目,添加default.aspx.Register.aspx.Login.aspx. default.aspx中添加LoginName.LoginStatus,LoginName的Form ...
- Delphi的TListView控件拖放选定行操作
http://www.tansoo.cn/?p=401 Delphi的TListView控件拖放选定行操作的例子,效果图如下:TListView控件拖动选定行到指定位置 具体实现步骤: 一.新建一个D ...
- 关于asp:login控件和验证码的问题?(转)
1.验证码页面添加.2.将这验证码页面添加到login控件中:拖曳一Login控件,将之切换到模式下,在Html源文件中在表格中密码那行后添加: <tr> <td style= ...
随机推荐
- C++头文件预编译与命名空间使用方法
宏指令的预编译用法,用于多文件的头文件预编译判断 头文件代码: #include <iostream> #ifndef XB_H//预编译判断XB_H代码段是否被执行 #define XB ...
- eclipse如何通过git把项目上传到码云上
转载:原文链接:https://www.cnblogs.com/yixtx/p/8310311.html 1.eclipse安装git插件 具体我也做过,因为我下载的eclipse版本以及由git插件 ...
- 每天一个linux命令:【转载】more命令
more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上. more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会 ...
- BZOJ2342 Shoi2011 双倍回文 【Manacher】
BZOJ2342 Shoi2011 双倍回文 Description Input 输入分为两行,第一行为一个整数,表示字符串的长度,第二行有个连续的小写的英文字符,表示字符串的内容. Output 输 ...
- 《DSP using MATLAB》示例Example7.9
代码: wp = 0.2*pi; ws = 0.3*pi; As = 50; tr_width = ws - wp; M = ceil((As-7.95)/(2.285*tr_width) + 1 ) ...
- java中static关键字的理解(转载)
static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键字的用法和平常容易误解的地方,最后列 ...
- windows获取文件夹下所有文件名的方法
方法一:tree命令 TREE——显示磁盘目录结构命令 功能:显示指定驱动器上所有目录路径和这些目录下的所有文件名. 格式:TREE [盘符:][\目录] [/F] [/A] 使用说明:使用/F参数时 ...
- elixir 几种安装方式
1. yum yum 源(直接放弃,版本太老) 2. 使用预编译包 wget https://github.com/elixir-lang/elixir/releases/download/v1. ...
- CDN初学搭建(ats)
CDN初学搭建(ats) ats trafficserver squid 一. CDN初学搭建 准备vagrant virtualbox 内部环境测试所需包 一.vagrant创建启动虚拟机 1 mk ...
- FastAdmin 的 API 可以分级吗?
FastAdmin 的 API 可以分级吗? 有小伙伴问 FastAdmin 的API 可以分别吗,使用 / 出现错误. Karson 的说明是: 完全支持的,默认是使用.进行分隔的,如果需要/,请开 ...