カスタム ロール プロバイダーとメンバーシップ プロバイダーがあります。このプロジェクトをasp.net 4 no 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;
}