这就是我现在拥有的:
public bool TokenCorrect() { var token = HttpContext.Session.GetInt32("Token"); return false; }
错误:
非静态字段方法或属性需要对象引用
它适用于Controllers,但我想在其他类中使用它.
在ASP.NET 5中获取HttpContext,您将对IHttpContextAccessor采用构造函数依赖,并将其注入到组件中.然后,您需要确保会话在使用之前可用.如果使用如下示例,则按要求确定组件的范围是很重要的
using Microsoft.AspNet.Http; using Microsoft.AspNet.Http.Features; public class Foo { public Foo(IHttpContextAccessor contextAccessor) { _context = contextAccessor.HttpContext; } private readonly HttpContext _context; public bool TokenCorrect() { ISessionFeature sessionFeature = _context.Features.Get(); if(sessionFeature != null) { int? token = sessionFeature.Session.GetInt32("Token"); if(token.HasValue) { // do whatever check you are doing } } return false; } }