源代码:13033480群共享
一、配置aspnetdb数据库
使用登录控件,由于要使用membership,首先需要ASP.NET配置的数据库aspnetdb的支持。配置这个数据库的操作如下:
1、新建数据库NetShopServices
2、进入C:\WINDOWS\Microsoft.NET\Framework\v2.0.xxxxx(vs2010的目录是v4.0.xxxx)这个目录下,找到aspnet_regsql.exe直接双击运行,就会弹出一个界面。
2、直接下一步。第二个界面让我们选择是添加表结构还是移除,我们当然选择添加,继续下一步。
3、在这个界面中需要填写服务器ip地址以及身份验证信息。在填写完毕后,选择将表结构添加到NetShopServices数据库中了。
需要注意的是:如果选择默认,则会创建一个新的名叫aspnetdb的数据库,然后将表结构加入其中。一路下一步就完成了数据库结构的添加。
二、Web.Config文件中进行如下配置
1、添加连接字符串
<add name="NetShopMembershipConnString" connectionString="server=.\sqlexpress;database=NetShopServices;integrated security=SSPI;" providerName="System.Data.SqlClient" />
2、配置membership
<system.web>
<membership defaultProvider="SQLMembershipProvider1">
<providers>
<add name="SQLMembershipProvider1"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="NetShopMembershipConnString"
applicationName="WestGarden"
minRequiredPasswordLength="1"
minRequiredNonalphanumericCharacters="0"
passwordFormat="Clear"/>
</providers>
</membership>
<system.web>
三、添加NewUser.aspx,选择母版MasterPage.master。
四、添加登录控件CreateUserWizard,直接拖入,默认设置即可:
<asp:Content ID="cntPage" ContentPlaceHolderID="cphPage" Runat="Server">
<asp:CreateUserWizard ID="CreateUserWizard" runat="server">
<WizardSteps>
<asp:CreateUserWizardStep runat="server">
</asp:CreateUserWizardStep>
<asp:CompleteWizardStep runat="server">
</asp:CompleteWizardStep>
</WizardSteps>
</asp:CreateUserWizard>
</asp:Content>
五、修改页面标题
Title="用户注册"
六、此时可运行、注册并查看结果。
【技术要点】
1、CreateUserWizard控件的运行需要membership类的支持,membership类的设置在Web.config文件中。
2、minRequiredPasswordLength="1"、minRequiredNonalphanumericCharacters="0"
密码最小长度为1,需要特殊字符@、#等的个数最少为0,也就是可以没有。
3、SqlMembershipProvider.的passwordFormat属性是设置密码格式的,通常设置为Hashed,暂时设置为Clear是为了查看方便。
4、注册完成后,可在数据库中查看注册情况:
用户名UserName在表aspnet_Users中;
密码Password、电子邮件Email、安全提示问题PasswordQuestion、安全答案PasswordAnswer都在表aspnet_Membership中
分享到:
相关推荐
activity控件,这是我在学习安卓的时候做的demo便于之后忘记的时候在查看学习,里面包含了相对布局的一些属性,线性布局,基础控件
Python训练营Task1(csdn)————程序
C# 跨线程访问UI线程控件 ...第一种:使用控件自带的Invoke或者BeginInvoke方法。 Task.Factory.StartNew(() => { this.button1.Invoke(new Action(() => { this.button1.Text = hello world; })
AI训练营python-task1(csdn)————程序
python训练营python笔记task2(csdn)————程序
* [GZHMTJavaEE课设项目——校园宽带业务管理系统](#gzhmtjavaee课设项目校园宽带业务管理系统) * [项目介绍](#项目介绍) * [系统功能](#系统功能) * [技术栈](#技术栈) * [相关工具组件](#相关工具组件) * ...
大数协python训练营打卡笔记Task01(csdn)————程序
大数协python训练营打卡笔记Task02(csdn)————程序
springtask配置,大家一起参考学习下,分享下。Java方面
python训练营 Task01 学习笔记(csdn)————程序
系统学习《动手学深度学习》点击这里: 《动手学深度学习》task1_1 线性回归 《动手学深度学习》task1_2 Softmax与分类模型 《动手学深度学习》task1_3 多层感知机 ...《动手学深度学习》task1——
1.1.1 进程的基本信息 6 1.1.2 进程状态 10 1.1.3 TASK_RUNNING状态的进程链表 11 1.1.4 进程间关系 12 1.2 Linux的线程——轻量级进程 15 1.3 进程的创建——do_fork()函数详解 19 1.4 执行进程间切换 33 1.4.1 ...
python动手学数据分析task04数据可视化(csdn)————程序
OA第12天_Task后有多条路的流程——费用报销流程
文档讲述了SpringTask动态定时任务的使用以及配置方法。可拔插的使用在相关的项目中去
该文档给出了c#线程实时更新图表及其他控件数据的完成代码,通过委托delegate和控件的BeginInvoke方法实现数据的绑定
WinForm(C#)中跨线程访问控件的解决方法 由于多线程可能导致对控件访问的不一致,导致出现问题。C#中默认是要线程安全的,即在访问控件时需要首先判断是否跨线程,如果是跨线程的直接访问,在运行时会抛出异常。 ...
Windows XP风格,左边侧栏的TASK任务控件
GUI是整个系统的所有的GUI界面,其中Init.m用做系统的登录界面,robotallocation.m是系统1的主界面,TCP_server是系统的通信界面 image包含系统所用到的相关资源 path_planning_code包括路径规划的算法 task_...
《动手学深度学习》task1_1 线性回归 《动手学深度学习》task1_2 Softmax与分类模型 《动手学深度学习》task1_3 多层感知机 《动手学深度学习》task2_1 文本预处理 《动手学深度学习》task2_2 语言模型 《动手学深度...