我将 ASP.NET Core 与 ASP.NET Identity 结合使用,并具有以下内容:
User user = await _userManager.FindByEmailAsync(myEmail);
SignInResult result = await _signInManager.PasswordSignInAsync(user, myPassword, true, false);
我获得了一个用户,但当我尝试登录该用户时,出现错误:
[Error] An unhandled exception has occurred while executing the request
System.InvalidOperationException:没有配置身份验证处理程序来处理该方案:Microsoft.AspNet.Identity.Application
在网络项目启动文件中我有:
public void Configure(IApplicationBuilder applicationBuilder, IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory) {
// Other configuration code lines
applicationBuilder.UseIISPlatformHandler(options => options.AuthenticationDescriptions.Clear());
applicationBuilder.UseIdentity();
} // Configure
public void ConfigureServices(IServiceCollection services) {
// Other configuration code lines
services
.AddIdentity<User, Role>()
.AddEntityFrameworkStores<Context, Int32>()
.AddDefaultTokenProviders();
}
我不知道出了什么问题。我尝试更改配置,但总是遇到相同的错误...
有什么想法吗?
最佳答案
applicationBuilder.UseIdentity();
是应该配置cookie中间件的,确保在调用之前调用该行
applicationBuilder.UseMvc()
认证必须在mvc之前配置
关于asp.net-core - 没有配置身份验证处理程序来处理方案 : Microsoft. AspNet.Identity.Application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36058941/