Asp.net webapi中的会话失效

Asp.net webapi中的会话失效,asp.net,session,request,asp.net-web-api2,Asp.net,Session,Request,Asp.net Web Api2,我试图在WebAPI2的会话中存储一些值,尽管这违背了REST的基本原则。但每次请求都会丢失会话。这是一个web表单+web API项目 在Global.asax.cs中添加以下代码 protected void Application_PostAuthorizeRequest() { System.Web.HttpContext.Current.SetSessionStateBehavior(System.Web.SessionState.Sessio

我试图在WebAPI2的会话中存储一些值,尽管这违背了REST的基本原则。但每次请求都会丢失会话。这是一个web表单+web API项目

在Global.asax.cs中添加以下代码

 protected void Application_PostAuthorizeRequest()
        {
            System.Web.HttpContext.Current.SetSessionStateBehavior(System.Web.SessionState.SessionStateBehavior.Required);
        }
在一个控制器中添加会话数据,如下所示

HttpContext.Current.Session["ABC"] = "text";
每次请求/api调用都会导致会话丢失

我需要在Web API中设置会话,并以Web形式访问它

已尝试回答,但出现类似“错误2无法将类型“void”隐式转换为“System.EventHandler”的错误

作为一项改进,您可能希望使用Memcache查看对象缓存,而不是使用会话。您可以为缓存该对象选择唯一的键(取决于用户主键)并缓存数据。这是memcahe的nuget软件包,带有点网络。您可以将缓存持续时间设置为与会话超时相同。作为改进,您可能希望使用Memcache查看对象缓存,而不是使用会话。您可以为缓存该对象选择唯一的键(取决于用户主键)并缓存数据。这是memcahe的nuget软件包,带有点网络。您可以将缓存持续时间设置为与会话超时相同。可能存在重复的