没有配置身份验证处理程序来处理该方案:Microsoft.AspNet.Identity.Application

时间:2016-03-17 11:16:08

标签: asp.net-core asp.net-core-mvc

我正在使用带有ASP.NET身份的ASP.NET Core,并具有以下内容:

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

在Web项目启动文件中我有:

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();
}

我不知道出了什么问题。我试图改变配置,我总是得到同样的错误......

有什么想法吗?

1 个答案:

答案 0 :(得分:7)

applicationBuilder.UseIdentity(); 

应该配置cookie中间件,确保在调用

之前调用该行
applicationBuilder.UseMvc()
必须在mvc

之前配置

身份验证