c# - 如何设置 CookieExpiration 值
问题描述
我想从 DB 设置 CookieExpiration 值,但是,我收到一个错误:
System.InvalidOperationException: 'Unable to resolve service for type 'EMS.Services.Interfaces.ISettingsService' while attempting to activate 'EMS.Startup'.'
这是来自 DB 的值:
_settingsService.GetTheSettings().CookieExpirationPeriod
启动:
public ISettingsService _settingsService;
public Startup(IConfiguration configuration, ISettingsService settingsService)
{
Configuration = configuration;
_settingsService = settingsService;
}
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)
{
// Connection to DB
services.AddDbContext<EMSDbContext>(x => x.UseSqlServer(Configuration.GetConnectionString("DBConnection")));
// Services for Sign in - Signout - Access Denied
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie(options =>
{
options.LoginPath = "/Auth/SignIn";
options.LogoutPath = "/Auth/SignOut";
options.AccessDeniedPath = "/Auth/AccessDenied";
options.ExpireTimeSpan = TimeSpan.FromHours(_settingsService.GetTheSettings().CookieExpirationPeriod);
});
解决方案
推荐阅读
- javascript - zIndex doot 在原生基础卡上工作 - 反应原生
- sql-server - 如何更改表以在两个表之间创建外键
- python - cv2将c++的Range和copyTo函数转换为python
- reactjs - Redux-Saga 使用 Immutable.js 并且状态始终为空
- reactjs - 在 Apollo 客户端中,如何在成功突变后使用标头进行 refetchQueries?
- javascript - 如何将矩形平滑地变为圆形?
- angular - 无法在离子 4 中的函数内调用警报
- ios - Swift 4 快捷语法将多个对象(设置了一些属性)添加到数组中?
- c - C:在while循环中超过时间限制?
- java - 使用注释从休眠中的其他表映射数据?