Asp.net mvc Ninject属性注入在ActionFilters上不起作用

Asp.net mvc Ninject属性注入在ActionFilters上不起作用,asp.net-mvc,dependency-injection,ninject,Asp.net Mvc,Dependency Injection,Ninject,我有一个接口和一个实现该接口的类 public interface ISessionVariables { bool IsSessionTokenValidated { get; set; } } public class HttpContextSessionVariablesAdapter : ISessionVariables { private T Get<T>(string key) { return (T)HttpContext.C

我有一个接口和一个实现该接口的类

public interface ISessionVariables
{
    bool IsSessionTokenValidated { get; set; }
}

public class HttpContextSessionVariablesAdapter : ISessionVariables
{
    private T Get<T>(string key)
    {
        return (T)HttpContext.Current.Session[key];
    }

    private void Set(string key, object value)
    {
        HttpContext.Current.Session[key] = value;
    }

    public bool IsSessionTokenValidated
    {
        get { return Get<bool>("IsSessionTokenValidated"); }
        set { Set("IsSessionTokenValidated", value); }
    }
}
奇怪的错误:

如果将
ValidateSessionTokenAttribute
添加到ActionResult,则会填充
SessionVariables
属性

[ValidateSessionToken]
public ActionResult Index()
{

}
如果将同一筛选器绑定到所有ActionResults(在FilterConfig中),则
SessionVariables
属性始终为
null

public class FilterConfig
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new ValidateSessionTokenAttribute());
    }
}
我做错了什么?

可能重复
[ValidateSessionToken]
public ActionResult Index()
{

}
public class FilterConfig
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new ValidateSessionTokenAttribute());
    }
}