无法引用HTTPContext.Session

时间:2019-06-06 16:10:09

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

尝试调用方法Get时出现此错误

public static class SessionExtensions
{
    public static void Set<T>(this ISession session, string key, T value)
    {
        session.SetString(key, JsonConvert.SerializeObject(value));
    }

    public static T Get<T>(this ISession session, string key)
    {
        var value = session.GetString(key);

        return value == null ? default(T) :
            JsonConvert.DeserializeObject<T>(value);
    }
}

我可以使用以下代码从任何控制器调用它:

HttpContext.Session.Get<UserLogged>(StringProperties.SESSION_USER_LOGGED) 

但是我不能从一个普通的班级上叫它

 public class Validating 
{
    public void Verify()
    {
        var user = HttpContext.Session.Get<UserLogged>(StringProperties.SESSION_USER_LOGGED);
    }
}

它给我这个错误“访问非静态字段方法或属性HttpContext.Session非静态需要对象引用”!

我该怎么办?

这是我的第一个问题,谢谢您的关注!

0 个答案:

没有答案