【发布时间】:2018-05-19 14:20:44
【问题描述】:
我创建了一个测试项目,使用:
dotnet new razor --auth Individual --output Test
这将创建一个 Startup.cs,其中包含:
public void ConfigureServices(IServiceCollection services)
{
services.Configure<CookiePolicyOptions>(options =>
{
// This lambda determines whether user consent for non-essential cookies is needed for a given request.
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = SameSiteMode.None;
});
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlite(
Configuration.GetConnectionString("DefaultConnection")));
services.AddDefaultIdentity<IdentityUser>()
.AddEntityFrameworkStores<ApplicationDbContext>();
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
我想播种一些用户和角色。用户和角色都将使用相同的存储 (SQLite)。我正在使用从 Program 调用的静态类进行播种。
我可以为用户播种,但不能为角色播种,因为上面似乎没有注入RoleManager。
在 ASP.NET Core 2.0 中使用以下内容:
services.AddIdentity<IdentityUser, IdentityRole>()
我猜AddDefaultIdentity 是 2.1 中的新功能,但问题是它没有注入 RoleMnager,那我该怎么办?
【问题讨论】:
标签: c# asp.net-core asp.net-core-identity asp.net-core-2.1