C# 使用coustom登录的登录视图控件
我有一个asp.net网页,其中包含如下自定义登录控件:C# 使用coustom登录的登录视图控件,c#,asp.net,C#,Asp.net,我有一个asp.net网页,其中包含如下自定义登录控件: <div id="login-box-name" style="margin-top: 20px;"> User Name:</div> <div id="login-box-field" style="margin-top: 20px;"> <a
<div id="login-box-name" style="margin-top: 20px;">
User Name:</div>
<div id="login-box-field" style="margin-top: 20px;">
<asp:TextBox ID="username" runat="server" CssClass="form-login"></asp:TextBox>
</div>
<div id="login-box-name">
Password:</div>
<div id="login-box-field">
<asp:TextBox ID="password" runat="server" CssClass="form-login" TextMode="Password"></asp:TextBox>
</div>
<br />
<span class="login-box-options">
<input type="checkbox" name="1" value="1">
Remember Me</span>
<br />
<br />
<asp:ImageButton ID="loginbtn" runat="server" ImageUrl="images/login-btn.png"
onclick="loginbtn_Click" />
<li>
<asp:LoginView ID="LoginView1" runat="server">
<RoleGroups>
<asp:RoleGroup Roles="Admins">
<ContentTemplate>
<a href="ControlPanel.aspx">Control Panel</a>
</ContentTemplate>
</asp:RoleGroup>
<asp:RoleGroup Roles="Users">
</asp:RoleGroup>
</RoleGroups>
</asp:LoginView>
</li>
“登录视图控件”如下所示:
<div id="login-box-name" style="margin-top: 20px;">
User Name:</div>
<div id="login-box-field" style="margin-top: 20px;">
<asp:TextBox ID="username" runat="server" CssClass="form-login"></asp:TextBox>
</div>
<div id="login-box-name">
Password:</div>
<div id="login-box-field">
<asp:TextBox ID="password" runat="server" CssClass="form-login" TextMode="Password"></asp:TextBox>
</div>
<br />
<span class="login-box-options">
<input type="checkbox" name="1" value="1">
Remember Me</span>
<br />
<br />
<asp:ImageButton ID="loginbtn" runat="server" ImageUrl="images/login-btn.png"
onclick="loginbtn_Click" />
<li>
<asp:LoginView ID="LoginView1" runat="server">
<RoleGroups>
<asp:RoleGroup Roles="Admins">
<ContentTemplate>
<a href="ControlPanel.aspx">Control Panel</a>
</ContentTemplate>
</asp:RoleGroup>
<asp:RoleGroup Roles="Users">
</asp:RoleGroup>
</RoleGroups>
</asp:LoginView>
</li>
但我的问题是,管理员登录“登录视图”控件后,没有显示名为“控制面板”的链接,是因为我为登录创建了自定义控件,还是因为我错过了e.Authenticated=true;。。或者别的什么???您需要设置授权cookie
FormsAuthentication.SetAuthCookie(username.Text, true);
此外,在注销时,请确保清除:
FormsAuthentication.SignOut();
Session.Clear();
Session.Abandon();
Response.Redirect("~/Default.aspx");