站长中国
设为首页 | 站长论坛

站长论坛 站长下载
您所在的位置: 站长中国 > 站长学院 > 网络编程 > NET专区 > 正文

ASP.NET 2.0中的登陆控件简介(3)
  2007年11月03日00:51:40  评论(0条) 字体:[ ]
相关热点:
     CreateUserWizard控件
  
    使用该控件,可以很方便地一步步引导用户进行注册。拖拉其到设计窗体中,如下图:
  
  
    当然,你可以对其属性进行更多地设置,比如,设置HeaderTemplate(头模版),StartNavigationTemplate(开始注册模版),FinishNavigationTemplate(结束注册模版)等,具体设置可以参考在线帮助。而该控件还允许当注册成功后向用户发邮件,比如:
  
  <asp:CreateUserWizard id="CreateUserWizard1" runat="server">
  <MailDefinition
  BodyFileName="NewUserEmail.txt"
  From="welcome@dorknozzle.com"
  Subject="Welcome to the Dorknozzle site!"/>
  </asp:CreateUserWizard>
  
    而发邮件则需要在web.config文件中配置,比如:
  
  <configuration>
  <system.web>
  <authentication mode="Forms"/>
  <smtpMail serverName="Localhost"/>
  </system.web>
  </configuration>
  
    PasswordRecovery密码恢复控件
  
    该控件可以实现简单地密码提示恢复功能,并将密码email给用户,代码如下:
  
  <asp:PasswordRecovery id="prForgotPass" runat="server"> </asp:PasswordRecovery>
  
    实现时如下图所示:
  
  
  
    用户输入用户名后,则需要输入密码恢复的答案,如下图:
  
    并在该控件中设置将恢复后的密码EMAIL给用户
  
  <asp:PasswordRecovery id="prForgotPass" runat="server">
  <MailDefinition
  BodyFileName="forgotpassword.txt"
  From="helpdesk@dorknozzle.com"
  Subject="Word has it, you forgot your password?"/>
  </asp:PasswordRecovery>
  
    ChangePassword 更改密码控件
  
    更改密码控件可以很方便地实现密码的更改,包括一个 MailDefinition 属性。如果将值赋给 MailDefinition 属性,则 ChangePassword 控件在密码成功更改时将自动向用户发送一个电子邮件。
  
  
    直接使用Membership API
  
    有时候,需要对成员身份进行更高级别(比 Web 站点管理工具或 Login 控件提供的控制级别高)的控制。在这些情况下,可以直接使用 Membership API。
  
    Membership API 是通过 Membership 类公开的。Membership 类包含的方法使您能够完成以下工作:创建新用户;更改密码;搜索与特定条件匹配的用户等等。在幕后,Login 控件使用这些方法与已配置的成员身份提供程序进行交互。
  
    下面列出了 Membership 类的一些比较重要的方法:
  
     CreateUser — 使您能够创建新用户。
  
     DeleteUser — 使您能够删除现有用户。
  
     FindUsersByEmail — 使您能够检索与某个特定的电子邮件地址匹配的用户集合。
  
     FindUsersByName — 使您能够检索与某个特定的用户名匹配的用户集合。
  
     GeneratePassword — 使您能够生成随机密码。
  
     GetAllUsers — 使您能够检索成员身份提供程序中存储的所有用户。
  
     GetNumberOfUsersOnline — 使您能够返回当前正在访问 Web 应用程序的用户数。
  
     GetUser — 使您能够检索与当前用户相关联的成员身份信息,或者使您能够检索与某个已经提供用户名的用户相关联的成员身份信息。
  
     GetUsernameByEmail — 使您能够检索具有某个特定电子邮件地址的用户的用户名。
  
     UpdateUser — 使您能够更新特定用户的信息。
  
     ValidateUser — 使您能够根据成员身份提供程序对用户进行身份验证。
  
    最后,我们利用该API,实现稍微复杂的功能。在index.aspx中,添加一个label控件,显示在线的人数,代码如下:
  
  Number of Users Online:
  <asp:Label id="lblNumUsersOnline" runat="server"/>
  
    在PAGE-LOAD事件中,增加代码如下:
  
  Sub Page_Load(s As Object, e As EventArgs) Handles MyBase.Load
  lblNumUsersOnline.Text = _
  Membership.GetNumberOfUsersOnline().ToString()
  End Sub
  
    则可以显示在线人数。我们并且再添加一个gridview,显示所有用户的在线状况,是否允许某种权限和相关的信息。
  
  <asp:GridView id="gvUsers" runat="server" AutoGenerateColumns="False">
  <Columns>
  <asp:BoundField HeaderText="Username" DataField="Username" />
  <asp:BoundField HeaderText="Is Online?" DataField="IsOnline" />
  <asp:BoundField HeaderText="Is Approved?" DataField="IsApproved" />
  <asp:BoundField HeaderText="Email" DataField="Email" />
  </Columns>
  </asp:GridView>
  
    并将gridview绑定:
  
  gvUsers.DataSource = Membership.GetAllUsers() ;
  gvUsers.DataBind();
  
    最后运行结果如下图:
  
    总结:
  
    本文以实际例子,介绍了asp.net 2.0中新增加的登陆系列控件的简单用法以及新增加的Membership API的简单使用,更多的请参考MSDN或正式版时的有关介绍。
  



收藏本文 打印 打印本文  推荐本文 告诉好友 投稿 投稿邮箱

站长排行

学院

新闻

专栏

盈利

[揭密网络黄链]中国留学生买凶专破日本
windows 2008中文版iis7+asp+php+Acces
贴吧发帖机使用教程(绝对原创)
超强弹出窗口代码,什么都挡不住
Windows Vista局域网网络连接设置
JSP语法(6)
FLASH视觉特效实例之地震效果
关于数据分页(转自www.codeproject.co
教你如何在Vista中设置麦克风
不用Photoshop 在线恶搞大头像
全国哀悼日网友自发QQ隐身上线 向死难
淘宝网卖家公然叫卖“艳照门”照片集
抗震救灾/鱼目混珠?
Google绿色专家质疑黑色背景网页节省资
阿里妈妈广告卖主全攻略
电影小说类相关关键字搜索量列表
爆笑 阿里就这样把亿告征服!
大脚:实战单页面优化关键词之——淘宝
国内各IT企业办公环境揭秘(多图)
心系灾区,点燃希望——手机QQ2008祈福
ECSHOP模板制作参考文档
悬挂阿里妈妈会否被百度惩罚
ECSHOP模板下载
阿里妈妈是否是中小站长的救世主?
最强网店ECShop发新版 众多酷炫功能给
土豆网,优酷网,爆米花等视频网站采集
DedeCms模板安装/制作概述
网上商店系统巅峰对决 ECShop vs ShopE
编程中国全站采集规则
http://www.mt86.com全站采集规则
性福联盟 一个不尊重站长的联盟
百度网络广告利润增长将会持续多久
大脚:日赚100元—揭露最新firefox欺骗
分享经验:个人网站如何月赚1万!
大脚:垃圾站超级赚钱法之二—突破“站
迅雷联盟、快车联盟收入对比
大脚:垃圾站超级赚钱法之——前言
Google Adsense的秘密 第二版
风险投资公司vc联系方式名录大全(一)
经理人必看的十个管理网站
站长学院  网页设计 建站教程 图形图象 网络编程

制定完整的网站
制定完整的网站
中国企业网站的
中国企业网站的

网站运营之怎么样来粘住你的用
网麒:网站建设创意
怎样提高网页快照更新
两种方法,教你如何通过微软正
英文网站优化细节
利用SSL加密增强FTP服务器的安
网页设计常用Javascript经典代

新闻线索

如果你有站长界人事变动、重组并购、变革技术出现,以及产品投诉等重要新闻线索,请告诉我们,我们会给予特别关注。
0631-3653338
站长中国编辑部
站长中国24小时新闻热线: 13156089008