【发布时间】:2019-12-07 06:52:59
【问题描述】:
我正在尝试将RoleManager 注入到我的控制器中,但出现此错误:
InvalidOperationException:尝试激活“StoreProject.Controllers.ProductController”时,无法解析“Microsoft.AspNetCore.Identity.RoleManager`1[StoreProject.Models.User]”类型的服务。
我的Startup 代码:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddMemoryCache();
services.AddSession();
services.AddTransient<IStoreRepository, StoreRepository>();
services.AddIdentity<User,IdentityRole<long>>(options =>
{
options.User.RequireUniqueEmail = true;
options.Password.RequireNonAlphanumeric = false;
options.Password.RequireUppercase = false;
}).AddEntityFrameworkStores<StoreContext>();
services.AddDbContext<StoreContext>(options =>
options.UseSqlServer("Server=LAPTOP-14M18EPM\\RONSQL;Database=projectDB;Trusted_Connection=True"));
}
我的控制器:
public class AccountController : Controller
{
private readonly SignInManager<User> _signInManager;
private readonly UserManager<User> _userManager;
private readonly RoleManager<User> _roleManager;
IStoreRepository _repository;
private readonly IHostingEnvironment _env;
public AccountController(SignInManager<User> signInManager,
UserManager<User> userManager,
RoleManager<User> roleManager,
IStoreRepository storeRepository,
IHostingEnvironment env)
{
_signInManager = signInManager;
_userManager = userManager;
_roleManager = roleManager;
_repository = storeRepository;
_env = env;
}
}
问题出在哪里?
【问题讨论】:
标签: c# asp.net-core