zoukankan      html  css  js  c++  java
  • identityserver4的项目升级成.netcore3.1后出现:Microsoft.Extensions.Logging.ILogger`1[Microsoft.AspNetCore.Identity.UserManager`1[Services.IdentityServer4.ApplicationUser]]

    把.net core2.1的identityServer4的项目升级成3.1后,出现如下错误:

    System.InvalidOperationException: Unable to resolve service for type 'Microsoft.Extensions.Logging.ILogger`1[Microsoft.AspNetCore.Identity.UserManager`1[Services.IdentityServer4.ApplicationUser]]' while attempting to activate 'Microsoft.AspNetCore.Identity.UserManager`1[Services.IdentityServer4.ApplicationUser]'.

    原来在core 2.1的时候不报错,升级为3.1后报错了。

    报错的代码如下:

                string connectionString = SysCore.ConfigHelper.GetSectionValue("ConnectionStrings:DefaultConnection");
                var services = new ServiceCollection();
                services.AddDbContext<ApplicationDbContext>(options => options.UseMySql(connectionString));
                services.AddIdentity<ApplicationUser, IdentityRole>(
                        options =>
                        {
                            options.Password.RequireUppercase = false;
                            options.Password.RequireLowercase = false;
                            options.Password.RequireDigit = false;
                            options.Password.RequiredLength = 0;
                            options.Password.RequireNonAlphanumeric = false;
                            options.Password.RequiredUniqueChars = 0;
                        }
                    )
                    .AddEntityFrameworkStores<ApplicationDbContext>()
                    .AddDefaultTokenProviders();
    
                var serviceProvider = services.BuildServiceProvider();
    
                var userMgr = serviceProvider.GetRequiredService<UserManager<ApplicationUser>>();

    添加一行后解决:

                string connectionString = SysCore.ConfigHelper.GetSectionValue("ConnectionStrings:DefaultConnection");
                var services = new ServiceCollection();
                services.AddDbContext<ApplicationDbContext>(options => options.UseMySql(connectionString));
                services.AddLogging(logging => logging.AddConsole());
                services.AddIdentity<ApplicationUser, IdentityRole>(
                        options =>
                        {
                            options.Password.RequireUppercase = false;
                            options.Password.RequireLowercase = false;
                            options.Password.RequireDigit = false;
                            options.Password.RequiredLength = 0;
                            options.Password.RequireNonAlphanumeric = false;
                            options.Password.RequiredUniqueChars = 0;
                        }
                    )
                    .AddEntityFrameworkStores<ApplicationDbContext>()
                    .AddDefaultTokenProviders();
    
                var serviceProvider = services.BuildServiceProvider();
    
                var userMgr = serviceProvider.GetRequiredService<UserManager<ApplicationUser>>();
  • 相关阅读:
    try-catch- finally块中, finally块唯一不执行的情况是什么?
    Mac下 pygame.image.load不显示图片解决方法
    Ubuntu中sudo速度慢的解决方法(转载)
    [Mac Terminal] ___中断跳出死循环
    Fuzzy logic
    Discrete Mathematics and Its Applications | 1 CHAPTER The Foundations: Logic and Proofs | 1.4 Predicates and Quantifiers
    Bugs -----The largest and most interesting kind of thing.
    A Brief, Incomplete, and Mostly Wrong History of Programming Languages
    MIPS指令集
    >> 计算机的数据表示
  • 原文地址:https://www.cnblogs.com/wjx-blog/p/13666906.html
Copyright © 2011-2022 走看看