ASP.NET控件的七种用户管理相关控件


  本文标签:ASP.NET控件

  ASP.NET控件中七种与用户管理相关的控件:
1. Login控件:实现用户登录(输入为用户名和密码)
2. LoginView控件:实现在匿名用户和登录用户的不同视图,可在其中设计用户在两种状态下所见的不同控件组合
3. PasswordRecovery控件:用于密码恢复(以后详细使用的时候再做介绍)
4. LoginStatus控件:用于通过用户状态(匿名/登录)显示Login/Logout的样式
5. LoginName控件:在用户登录的情况下表示用户名
6. CreateUserWizard控件:定义用户注册时需要填写的表单信息,直接完成用户的注册工作
7. ChangePassword控件:完成密码变更操作

  现在我们来通过以上ASP.NET控件中的Login、LoginView、LoginStatus、LoginName和CreateUserWizard控件实现简单的带有登录/注册功能的Web应用程序  。

  首先我们要先在web.config中完成配置用户数据库的工作,前提是读者已经使用aspnet_regsql注册了数据库应用程序服务,如果有不明白的地方,参加ScottGu的文章,虽然是英文但是里面有图示,简单明了  。

  然后我们修改web.config文件如下:
1.添加数据库连接字符串

  1. <connectionStrings> 
  2. <remove name="LocalSqlServer"/> 
  3. <add name="LocalSqlServer" connectionString="Data Source=localhost;
    Initial Catalog=RickTsueiDB;Integrated Security=True"
     providerName=
    "System.Data.SqlClient"/> 
  4. connectionStrings> 
  5.  

  2.将表单验证方式修改为Forms验证并设置Membership相关设置,Forms设置中的DefaultUrl和LoginUrl分别是我们的首页和登录页面所在的URL地址,填写后登录相关控件会直接找到这些页面  。

  1. <authentication mode="Forms"> 
  2. <forms defaultUrl="'/Default.aspx" loginUrl="'/User/SignIn.aspx"/> 
  3. authentication> 
  4. <membership defaultProvider="CustomizedProvider"> 
  5. <providers> 
  6. <add name="CustomizedProvider" type="System.Web.Security.
    SqlMembershipProvider"
     connectionStringName="localSqlServer" 
    applicationName="ScottsProject" minRequiredPasswordLength="5" 
    minRequiredNonalphanumericCharacters="0"/> 
  7. providers> 
  8. membership> 

  下面我们进入正题,首先我们要有三个页面和一个控件,三个页面分别是Default.aspx(首页)、SignIn.aspx(注册页面)和CreateUser.aspx(用户注册页面);一个控件是LoginControl.ascx(用户登录状态控件)  。

  LoginControl.ascx控件

  1. <%@ Control Language="vb" AutoEventWireup="false" CodeBehind=
    "LoginUserControl.ascx.vb" Inherits="Com.RickTsuei.UIC.LoginUserControl" %> 
  2. <asp:LoginView ID="LoginView1" runat="server"> 
  3. <AnonymousTemplate> 
  4. <asp:LoginStatus ID="LoginStatus_Login" runat="server" LoginText=
    "登录" LogoutText="退出" /> 
  5.  |  <a href="../User/CreateUser.aspx">注册a> 
  6. AnonymousTemplate> 
  7. <LoggedInTemplate> 
  8. <asp:LoginName ID="LoginName1" runat="server" /> 
  9.  |   
  10. <asp:LoginStatus ID="LoginStatus_Logout" runat="server" LoginText=
    "登录" LogoutText="退出" /> 
  11. LoggedInTemplate> 
  12. asp:LoginView> 

  以上是ASP.NET控件中七种与用户管理相关的控件