“保护所有页面”在用于web表单的asp.net标识中不起作用



我已经使用web表单和个人帐户创建了一个新的web应用程序,我可以创建一个用户并登录。但我需要所有页面都有密码保护。我需要添加什么才能起作用?

您没有添加太多细节,但我认为您的解决方案是检查用户是否在Page_Load上进行了身份验证。

这应该包含在基本页面类中(假设您有一个并且没有直接实现页面类)。

 public abstract class MyBaseAuthProtectedPage : Page
 {
    private void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if(!User.Identity.IsAuthenticated)
            {
                 //not authenticated logic here
            }
        }
     }
....
 }

所有页面都应实现MyBaseAuthProtectedPage类。

最新更新