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

asp.net|控件

 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或正式版时的有关介绍。

时间: 2024-08-03 05:20:12

ASP.NET 2.0中的登陆控件简介(3)的相关文章

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

asp.net|控件 asp.net 2.0中,新增了许多新的功能和控件.其中,新增的登陆控件可谓使得WEB应用的设计更加得心应手.什么是登陆控件呢?就是我们平常在WEB应用中经常要用到的用户注册,登陆,忘记密码,登陆后根据权限的不同而显示不同的页面等功能,现在在asp.net 2.0中都已经可以由提供的控件来实现了.ASP.NET 2.0中的登陆控件比较多,封装了大部分WEB应用中要实现系统登陆的系列功能,涉及到很多方面,本文将简单介绍一下它们的主要功能.       首先,asp.net 2

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

asp.net|控件 asp.net 2.0中,新增了许多新的功能和控件.其中,新增的登陆控件可谓使得WEB应用的设计更加得心应手.什么是登陆控件呢?就是我们平常在WEB应用中经常要用到的用户注册,登陆,忘记密码,登陆后根据权限的不同而显示不同的页面等功能,现在在asp.net 2.0中都已经可以由提供的控件来实现了.ASP.NET 2.0中的登陆控件比较多,封装了大部分WEB应用中要实现系统登陆的系列功能,涉及到很多方面,本文将简单介绍一下它们的主要功能. 首先,asp.net 2.0中,为了

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

asp.net|控件 Login控件       拖拉一个Login控件到窗体中,就发现和平时见到的登陆窗口差不多了,在该控件的属性窗口中,比较重要的是DestinationPageUrl 属性,该属性将指定用户在登陆后跳转的页面,而FailureText表示登陆失败后提示的文本,CreateUserText表示创建新用户的提示文本,PasswordRecoveryText表示提示密码的文本,PasswordRecoveryUrl表示实现密码提示恢复功能的链接,此外可以设置其很多属性,比如显示用

探讨ASP.NET 2.0中的Web控件改进技术

asp.net|web|控件 ASP.NET 2.0并没有抛弃1.1版本中的任何现有控件,而是增加了一组新的控件;同时还引入了若干新的控件开发技术.本系列文章将对这些内容展开全面探讨. 一. 引言 到目前为止,你可能已经了解了大量的ASP.NET 2.0新特征-母版页面,主题,提供者,等等--所有这样内容都相当精彩;但是,你是否了解到有关定制Web控件开发方面的重大变化?这正是我在本文中所想讨论的.如果你已经从事于控件开发,那么,我想本文所描述的ASP.NET 2.0中的新的改进特征会立即应用于

ASP.NET 2.0中使用multiview控件

asp.net|控件     在asp.net 2.0中,增加了许多新的控件和功能,大大方便了开发者的开发.这次要讲解的是在asp.net 2.0中新增的multiview控件的使用.所谓multiview控件,实际上是有点象在c/s开发中很常见的tabcontrol控件,可以在一个页面中,放置多个"view"(我们称为选项卡),比如可以用multiview控件,可以让用户在同一页面中,通过切换到每个选项卡,从而看到要看的内容,而不用每次都重新打开一个新的窗口.本文,将以visual

使用ASP.NET 2.0中的GridView控件

asp.net|控件 在ASP.NET 2.0中,加入了许多新的功能和控件,相比asp.net 1.0/1.1,在各方面都有了很大的提高.其中,在数据控件方面,增加了不少控件,其中的gridview控件功能十分强大.在本文中,将一步步以实际例子为读者介绍asp.ne 2.0中gridview控件的简单使用. 用过asp.net 1.0/1.1的朋友或者也感觉到,其中的datagrid控件功能是十分强大而且实用的,但随之而来的问题是,感觉在操作上依然不大方便,比如要用ado.net写数据的连接,绑

在ASP.NET 2.0中使用multiview控件

在asp.net 2.0中,增加了许多新的控件和功能,大大方便了开发者的开发. 这次要讲解的是在asp.net 2.0中新增的multiview控件的使用.所谓multiview 控件,实际上是有点象在c/s开发中很常见的tabcontrol控件,可以在一个页面 中,放置多个"view"(我们称为选项卡),比如可以用multiview控件 ,可以让用户在同一页面中,通过切换到每个选项卡,从而看到要看的内容,而 不用每次都重新打开一个新的窗口.本文,将以visual studio .ne

asp.net 2.0中不同web控件之间的相互调用

asp.net|web|控件 在asp.net 2.0中,要在不同的web控件之间互相调用,必须要<%@ Reference VirtualPath="另一控件名称">来引用,举例如下 default.aspx:<form id="form1" runat="server">        <uc1:WebUserControl id="WebUserControl1" runat="s

ASP.NET 2.0中使用HiddenField控件

asp.net|控件 HiddenField控件顾名思义就是隐藏输入框的服务器控件,它能让你保存那些不需要显示在页面上的且对安全性要求不高的数据.也许这个时候应该有这么一个疑问,为什么有了ViewState.Session和Cookie等状态保存机制,还需要用起HiddenField呢? 增加HiddenField,其实是为了让整个状态管理机制的应用程度更加全面.因为不管是ViewState.Cookie还是Session,都有其失效的时候,比如用户因某种需求要求设置ViewState为fals