如何在应用程序的任何位置设置会话超时



我想通过ASP.NET标识配置的管理后端更改IAppBuilderSession Timeout

其想法是摆脱IIS手动重置,只在数据库中配置会话超时

换句话说,我们可以在ASP.NET MVC应用程序的不同位置访问CookieAuthenticationOptions吗?

例如,我们可以在HomeController中执行吗?有办法做到吗?

启动。AUTH.CS

public void ConfigureAuth(IAppBuilder app)
        {
            // It goes from Database
            var sessionTimeout = Convert.ToInt32(SysConfigView.GetSysConfig().SessionTimeout);
            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                ExpireTimeSpan = TimeSpan.FromMinutes(sessionTimeout),
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                LoginPath = new PathString("/Account/Login"),
                CookieName = ".MyApp_Authentication",
                SlidingExpiration = true
            });
          // There is other code...
}

从需要的代码处延长超时

此外,如果您试图在配置中更改此参数,则会导致应用程序池重新启动。

会话超时=40;

相关内容

  • 没有找到相关文章