C# 在ASP.NETWebAPI 2中访问会话对象

C# 在ASP.NETWebAPI 2中访问会话对象,c#,asp.net,session,asp.net-mvc-5,asp.net-web-api2,C#,Asp.net,Session,Asp.net Mvc 5,Asp.net Web Api2,如何在Web Api 2控制器中使用HttpContext的会话 Session对象为null,虽然我在ASP.Net的WebAPI的第一个版本中看到了各种启用会话状态的方法,但这些方法似乎都不适用于WebAPI2 Web Api 1的参考: 我意识到这不是每个人都同意的方法,但在我正在开发的应用程序中使用状态完整的API会很有用。您可以创建状态WebAPI,并且可以像在任何其他Web应用程序中一样维护会话。您需要做的唯一不同的事情是握手来识别会话 一个例子是在cookie中生成会话和设置会话

如何在Web Api 2控制器中使用
HttpContext
会话

Session对象为null,虽然我在ASP.Net的WebAPI的第一个版本中看到了各种启用会话状态的方法,但这些方法似乎都不适用于WebAPI2

Web Api 1的参考:


我意识到这不是每个人都同意的方法,但在我正在开发的应用程序中使用状态完整的API会很有用。

您可以创建状态WebAPI,并且可以像在任何其他Web应用程序中一样维护会话。您需要做的唯一不同的事情是握手来识别会话


一个例子是在cookie中生成会话和设置会话ID。然后,每当客户机与服务器通信时,它都会附加SessionID cookie。可以通过创建自己的BaseAPIController来处理ApicController中的会话。

REST应该是无状态的。忘了Session吧,我很感激,但我并不想要RESTAPI。我正在寻找一种变通方法,以便我的API可以处于完全状态,并在应用程序其他地方设置的ApiController中访问会话。在WebAPI2之前,存在大量的变通方法。