在自定义角色和成员资格提供程序中启用会话

本文关键字:程序 启用 会话 角色 自定义 成员 | 更新日期: 2023-09-27 18:32:23

我有自定义角色和成员资格提供程序。我想在 asp.net 4 没有 mvc 中使用这个项目。

并在 web.config 中使用以下代码:

<authentication mode="Forms">
  <forms loginUrl="~/Login.aspx" timeout="2880" />
</authentication>

自定义成员资格提供程序和项目 它已工作,但会话在项目中不起作用。

我使用此代码登录:

private User SetupFormsAuthTicket(string userName, bool persistanceFlag)
    {
        User user;
        UsersContext usersContext = new UsersContext();
            user = usersContext.GetUser(userName);
        var userId = user.UserId;
        var userData = userId.ToString(CultureInfo.InvariantCulture);
        var authTicket = new FormsAuthenticationTicket(1, //version
                            userName, // user name
                            DateTime.Now,             //creation
                            DateTime.Now.AddMinutes(30), //Expiration
                            persistanceFlag, //Persistent
                            userData);
        var encTicket = FormsAuthentication.Encrypt(authTicket);
        Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket));
        return user;
    }

在自定义角色和成员资格提供程序中启用会话

你的web.config中有这个吗?

<sessionState cookieless="AutoDetect" regenerateExpiredSessionId="true" timeout="20" />