快速业务通道

ASP.NET 2.0中的登陆控件简介

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
将密码email给用户,代码如下:

<asp:PasswordRecovery id="prForgotPass" runat="server"> </asp:PasswordRecovery>

实现时如下图所示:

ASP.NET 2.0中的登陆控件简介

用户输入用户名后,则需要输入密码恢复的答案,如下图:

ASP.NET 2.0中的登陆控件简介

并在该控件中设置将恢复后的密码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 控件在密码成功更改时将自动向用户发送一个电子邮件。

ASP.NET 2.0中的登陆控件简介

直接使用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();

最后

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号