Asp.net core如何使用Session

Asp.net core使用session:

在新建Asp.net core应用程序后,要使用session中间件,在startup.cs中需执行三个步骤:

1.使用实现了IDistributedcache接口的服务来启用内存缓存。(例如使用内存缓存)

 //该步骤需在addsession()调用前使用。 

2.调用addsession方法

3.使用usesession回调(usesession需在useMvc()方法前调用)

具体代码如下:

public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDistributedMemoryCache();//启用session之前必须先添加内存
            services.AddSession(options =>
            {
                options.Cookie.Name= ".AdventureWorks.Session";
                options.IdleTimeout = TimeSpan.FromSeconds(10);//设置session的过期时间
                options.Cookie.HttpOnly = true;//设置在浏览器不能通过js获得该cookie的值
            }
            );
            services.AddMvc();
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            app.UseSession();
            app.UseMvc();
        }
}
原文地址:https://www.cnblogs.com/Pzhenzhen/p/8524864.html