2013-05-18 147 views
0

我找到了为web api 4.0添加会话状态的解决方案。但我没有找到一个4.5。 可以有一点指出如何做到这一点?ASP.NET MVC Web Api 4.5会话状态

+0

请问[这个](http://stackoverflow.com/questions/9594229/accessing-session-using-asp-net-web-api)有帮助吗? – levelnis

+0

不,那个链接带我到一个我找不到代码的页面 –

回答

3

Use this solutions:在去下面的代码

但是相反webapiconfig

var route = config.Routes.MapHttpRoute(...

使用RoutTable类

var route = RouteTable.Routes.MapHttpRoute(...

3

您可以测试使用RouteTable传入的请求。 Routes.GetRouteData来确定它是否是一个We b API请求:

protected void Application_PostAuthorizeRequest() 
    { 
     // WebApi SessionState 
     var routeData = RouteTable.Routes.GetRouteData(new HttpContextWrapper(HttpContext.Current)); 
     if (routeData != null && routeData.RouteHandler is HttpControllerRouteHandler) 
      HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required); 
    }