图形登录控件
1.CreateUserWizard控件
asp:CreateUserWizard ID="CreateUserWizard1" runat="server" BorderColor="#FF6666" BorderWidth="2px"> <WizardSteps> <asp:CreateUserWizardStep runat="server" /> <asp:CompleteWizardStep runat="server" /> </WizardSteps> </asp:CreateUserWizard>
<WizardSteps>部分列出了向导的所有步骤。默认的第一个是注册表单,第二个是确认信息。可以在这两个步骤之间添加其他步骤,向导会自动添加前进和后退按钮。并且引发一些事件来提醒所发生的事情。
由于事先在web.config中设置不需要密码答案和问题,运行后,向导控件显示在设计视图的密码问题和答案在运行时自动隐藏:
图片4
可以设置控件,当用户注册完成后自动向用户发送确认邮件。在<MailDefinition>定义,包括发送者的E-mail地址、邮件主题,及文本文件(邮件主题)的引用,示例代码如下:
同时,web.config的<mailSettings>及其子项必须配置SMTP服务器,代码如下:
单击【创建用户】按钮:
经过检查,发现web.config中设置错误[userName应该为邮箱名字],改为:
<system.net> <mailSettings> <smtp deliveryMethod="Network" from="webadminsys@163.com"> <network host="smtp.163.com" userName="webadminsys@163.com" password="webadminsys111" port="25"/> </smtp> </mailSettings> </system.net>
注册成功后,如图:
注意查看视图:vw_aspnet_MembershipUsers
打开邮箱:abc123abctest@163.com,看看收到邮件的情况:
邮件的正文部分依照<MailDefinition>中 BodyFileName的设置:
2.Login控件
该控件调用Membership.ValidateUser方法检查能否在数据库中找到所给的用户凭证,如找到,就调用
FormsAuthentication.RedirectFromLoginPage来创建加密了的权限票证(authentication ticket),将它保存在客户端cookie中。
属性:CreateUserText/CreateUserUrl;PasswordRecoryText/PasswordRecoveryUrl;VisibleWhenLoggedIn(登录后是否隐藏)
3.ChangePassword 控件
允许对其当前密码进行修改,它的声明中可以包含一个<MailDefinition>,用于向用户发送包含了新用户凭证的确认E-mail。
注意:这里设置:
BodyFileName为 ~/changepasswordMail.txt, IsBodyHtml为true
<asp:ChangePassword ID="ChangePassword1" runat="server" BorderColor="#3366FF" BorderWidth="3px" PasswordRecoveryText="恢复密码" PasswordRecoveryUrl="~/PasswordRecoveryDemo.aspx"> <MailDefinition Subject="密码更改确认" IsBodyHtml="true" BodyFileName="~/changepasswordMail.txt"/> </asp:ChangePassword>
可通过设置Login控件的属性:DestinstionPageUrl
获取或设置在登录尝试成功时向用户显示的页面的 URL。
看看邮件:
看到html邮件正文同样支持!
4:PasswordRecory控件
第一步:需要回答用户名
第二步:需要回答注册时的密码安全答案
若(web.config中<membership>子项若设置 requiresQuestionAndAnswer="false",则没有此步确认[参考上面的图片4])
如果正确,该控件会向用户发送一个E-mail,所以需用到<MailDefinition>。
5:LoginName控件
6:LoginStatus控件
根据当前用户是否通过认证来显示一个登录或者注销的链接。
属性:LoginText/LogoutText ,单击Logout链接,会调用FormsAuthentication.SignOut方法,删除客户端认证票据信息,然后刷新当前页面或者
根据LogoutAction和LogoutPageUrl属性值跳转到其他页面。
7:LoginView控件
可以根据当前用户是否被认证来显示不同的输出信息。
用户未通过认证时显示Login控件,而用户登录后则显示[用户名]和一个Logout链接。
子曰:“学而时习之,不亦说乎!有朋自远方来,不亦乐乎!人不知而不愠,不亦君子乎!”
当来之世,经道灭尽,我以慈悲哀愍,特留此经止住百岁。其有众生,值斯经者,随意所愿,皆可得度。(南无阿弥陀佛)
道可道,非常道;名可名,非常名。
我常说,一个国家,一个民族,亡国都不怕,最可怕的是一个国 家和民族自己的根本文化亡掉了,这就会沦为万劫不复,永远不会翻身。---南怀瑾<国学大师>
当来之世,经道灭尽,我以慈悲哀愍,特留此经止住百岁。其有众生,值斯经者,随意所愿,皆可得度。(南无阿弥陀佛)
道可道,非常道;名可名,非常名。
我常说,一个国家,一个民族,亡国都不怕,最可怕的是一个国 家和民族自己的根本文化亡掉了,这就会沦为万劫不复,永远不会翻身。---南怀瑾<国学大师>