使用背景:在ApiController 中使用Session
1. 打开项目的Global.asax文件,重新方法init。 否则在使用时
在 HttpContext.Current.Session.Add("USERNAME",USERNAME);
报错: 未将对象引用设置到对象的实例。
public override void Init()
{
PostAuthenticateRequest += MvcApplication_PostAuthenticateRequest;
base.Init();
}
void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e)
{
HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required);
}
HttpContext.Current.Session.Timeout = 100;//获取和设置的过期时间,以分钟为单位
HttpContext.Current.Session.Add("USERNAME",USERNAME);
// Web.config
<system.web>
<sessionState mode = "InProc" timeout = "30" /> <!--设置过期时间-->
</system.web>
参考:
https://blog.youkuaiyun.com/qq_38977099/article/details/100138664