一个简单的Membership练习记录

1.找到C:\Windows\Microsoft.NET\Framework\v2.0.50727下的aspnet_regsql.exe,双击安装(在之前建立一个SQL数据库MembershipTest);


2.新建几个aspx页面,如图:
 
3.配置文件Web.Config中,找到<authentication>节点,改为如下:
<authentication mode="Forms">
<forms defaultUrl="~/Default.aspx" loginUrl="~/Login.aspx" timeout="30"></forms>
</authentication>

 

 
增加节点:
<membership>
      <providers>
        <clear/>
        <add 
name="AspNetSqlMembershipProvider" 
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
connectionStringName="ConnectionString" 
enablePasswordRetrieval="false" 
enablePasswordReset="true" 
requiresQuestionAndAnswer="true" 
applicationName="/" 
requiresUniqueEmail="false" 
passwordFormat="Hashed" 
maxInvalidPasswordAttempts="5" 
minRequiredPasswordLength="7" 
minRequiredNonalphanumericCharacters="1" 
passwordAttemptWindow="10" 
passwordStrengthRegularExpression=""
/>
</providers>
</membership>

 

 
以上节点从C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG的machine.config文件中,查找membership中寻找,然后复制粘贴;其中需要修改的是connectionStringName="ConnectionString",其中
ConnectionString为连接MembershipTest的连接字符串的name:
<connectionStrings>
<add name="ConnectionString" connectionString="DataSource=.\SQLEXPRESS;Database=MembershipTest;Trusted_Connection=True;"/>
</connectionStrings>

 

 
4.aspx页面控件设置
Default.aspx页面
<div>
        <asp:LoginView ID="LoginView1" runat="server">
        <AnonymousTemplate>
            <asp:LoginStatus ID="LoginStatus1" runat="server" />
        </AnonymousTemplate>
 
        <LoggedInTemplate>
            <asp:LoginName ID="LoginName1" runat="server" />
            <asp:LoginStatus ID="LoginStatus2" runat="server" />     
        </LoggedInTemplate>
 
        </asp:LoginView>
</div>

 

 
Login.aspx页面
<div>
        <asp:Login ID="Login1" runat="server" CreateUserText="注册新用户" CreateUserUrl="~/Register.aspx">
        </asp:Login>
</div>

 

 
Register.aspx页面
拖控件  登录下面的CreateUserWizard控件
 
Account.aspx页面
<div>
        <asp:LoginName ID="LoginName1" runat="server" />
        <asp:LoginStatus ID="LoginStatus1" runat="server" />
</div>

 

 
在配置文件中</system.web>后面加入:
<location path="Account.aspx">
    <system.web>
      <authorization>
        <deny users="?"/>
      </authorization>
    </system.web>
</location>

 

说明:定位Account.aspx页面,<authorization>匿名用户,<deny users="?"/>删除没有登录的用户,即没有登录的用户不能访问;
posted @ 2012-06-29 14:30  TigerWang1986  阅读(137)  评论(0)    收藏  举报