Context.Session在类的外部控制器
问题描述:
在控制器我目前使用Context.Session.GetString(*KEY*);
我有一个需要从存储在我用这个HttpContext.Current.Session[*KEY*]
会议Context.Session在类的外部控制器
几个值读取类。
我试过在Stackoverflow和MSDN搜索没有运气。
答
HttpContext.Current
不ASP.NET 5不复存在了,但有一个新的IHttpContextAccessor
,你可以在你的依赖注入,并用它来获取当前HttpContext
:https://github.com/aspnet/Hosting/blob/dev/src/Microsoft.AspNet.Hosting.Abstractions/IHttpContextAccessor.cs
public class MyComponent : IMyComponent {
private readonly IHttpContextAccessor contextAccessor;
public MyComponent(IHttpContextAccessor contextAccessor) {
this.contextAccessor = contextAccessor;
}
public string GetDataFromSession() {
return contextAccessor.HttpContext.Session.GetString(*KEY*);
}
}
你是说HttpContext.Current。会话未定义?在asp.net 5中似乎没有改变。 –
是的,当我在一个类中时,我不能访问Current。 –
这个类是否被部署为您想要访问会话的同一个Web应用程序的一部分? –