无法在控制器外部访问userManager

时间:2018-10-15 09:19:37

标签: c# .net asp.net-core

我在启动时设置了.net身份:

services.AddIdentity<ApplicationUser, IdentityRole>()
    .AddEntityFrameworkStores<ApplicationDbContext>()
    .AddDefaultTokenProviders();

这在带有构造函数注入的控制器中正常工作。

但是,如果我告诉.net注入另一个类,即:

services.AddScoped<WebSocketEvent>();

,然后在课程中:

public class WebSocketEvent
{
    IHubContext<SignalHub> _hubcontext;
    UserManager<ApplicationUser> _userManager;

    public WebSocketEvent(IHubContext<SignalHub> hubcontext, UserManager<ApplicationUser> userManager)
    {
        _hubcontext = hubcontext;
        _userManager = userManager;     
    }
}

它无法制作/注入userManager,我得到:

  

InvalidOperationException:尝试激活“ WebSockets.Services.WebSocketEvent”时,无法解析类型为“ Microsoft.AspNetCore.Identity.UserManager`1 [WebSockets.Models.ApplicationUser]”的服务。

0 个答案:

没有答案