首页 文章

如何实例化ASP.net(MVC 5)会话变量?

提问于
浏览
0

我按照微软的文档进行了最好的理解,添加了这个;

// Adds a default in-memory implementation of IDistributedCache.
        services.AddDistributedMemoryCache();

        services.AddSession(options =>
        {
            // Set a short timeout for easy testing.
            options.IdleTimeout = TimeSpan.FromSeconds(10);
            options.CookieHttpOnly = true;
        });

to ConfigureServices(IServiceCollection services)和this;

app.UseSession();

配置(IApplicationBuilder应用程序,...

然而,当我尝试在任何控制器的任何操作中访问 HttpContext.Session 时,我得到一个空引用异常 .

我试图强制实例化,但无法弄清楚要分配什么 . 我知道HttpContext.Session是一个ISession但我不知道是什么实现了这个接口,如果我必须自己为一些键值对实现它是荒谬的 .

我究竟做错了什么?

1 回答

  • 1

    据我所知,你需要阅读这个one . 在我的情况下它是有用的 .

    UPDATED:

    在这种情况下,解决方案按照正确的顺序启动服务并添加其用途 . 正确的顺序:

    1. AddMvc  
       2. AddCaching  
       3. AddSession
       4. UseSession
       5. UseMvc
    

相关问题