IHttpContextAccessor Session GetString

时间:2017-06-30 16:16:59

标签: c# asp.net-core .net-core

我尝试使用.NET Core运行时将ASP.NET MVC站点迁移到ASP.NET Core。以前我们可以通过

将对象从会话存储中取出,即使在不同的程序集中也是如此
var obj = HttpContext.Current.Session[key]

现在我已经读过了我们必须注入IHttpContextAccessor并使用_contextAccessor.HttpContext.Session上的方法。但是Session对象的方法已经改变,并且不再应用索引。

我在其他问题中看过人们使用HttpContext.Session.GetString()和HttpContext.Session.SetString():

Access HttpContext.Current

有了这些,我至少可以取消/序列化我想要获取/获取的对象。但我无法在界面上找到这些方法。

  

'的Isession'不包含' GetString'的定义没有扩展方法   '的GetString'接受第一个类型' ISession'可以找到

如何访问这些方法?

1 个答案:

答案 0 :(得分:18)

GetStringMicrosoft.AspNetCore.Http.Extensions程序集中的extension method,请确保您对此有所引用。您可能还需要导入它:

using Microsoft.AspNetCore.Http;