我正在创建的网站有一个部分用于未经过身份验证的用户,另一个部分用于经过身份验证的用户。
(几乎)站点中的每个页面都有一个 LoginStatus 控件,该控件位于标题中,并根据状态显示为 2 个不同的按钮。
我遇到的问题是,尽管该控件中的 LogoutPageUrl 值设置为值“~login.aspx”,但对于站点的非身份验证文件夹中的页面,站点仅刷新页面但控件确实显示用户通过在控件中显示正确的图像来注销。当再次单击该控件时,您将被定向到登录页面。
这是控制:
<asp:LoginStatus CssClass="loginControlBtn" ID="LoginStatus2"
runat="server" LogoutPageUrl="~/login.aspx"
LoginImageUrl="~/images/LoginBtn.jpg"
LogoutImageUrl="~/images/LogoutBtn.jpg" />
此外,单击 LoginStatus 控件上的登录选项并再次登录后,您不会被定向到 Login 控件中指定的页面,而是最终回到您在 LoginStaus 控件上选择 Login 选项时所在的页面.
这是该登录控件的代码:
<asp:Login ID="helpDeskLoginCtrl" runat="server"
DestinationPageUrl="~/admin/HelpDeskOptions.aspx"
style="text-align: justify" VisibleWhenLoggedIn="False" Width="421px">
</asp:Login>
该站点使用表单身份验证,因此只有经过身份验证的用户才能查看“〜/ admin”文件夹中的页面..并且至少该部分可以正常工作,因为在该文件夹中的页面上您被定向到“ ~/login.aspx”页面。
但是当你再次登录而不是去
DestinationPageUrl="~/admin/HelpDeskOptions.aspx
正如在登录控件中指定的那样,您将被引导回您来自的页面。
我真的很难过。