Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用coustom登录的登录视图控件_C#_Asp.net - Fatal编程技术网

C# 使用coustom登录的登录视图控件

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

我有一个asp.net网页,其中包含如下自定义登录控件:

                    <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");