我正在尝试在托管服务中使用DBContext,但收到此错误。我尝试遵循此已 接受的答案,但是以某种方式无法正常工作,我不确定自己在做什么错。
我是.net的新手,请引导我朝正确的方向发展。
未处理的异常:System.InvalidOperationException:无法使用单例“ Microsoft.AspNetCore.Hosting.Internal.HostedServiceExecutor”中的作用域服务“ StatusApp.Context.DBContext”。
public class TokenService : IHostedService
{
public IConfiguration _Configuration { get; }
protected IMemoryCache _cache;
private Timer _timer;
public IHttpClientFactory _clientFactory;
public DBContext _DBcontext;
private readonly IServiceScopeFactory _scopeFactory;
public TokenService(IConfiguration configuration, IMemoryCache memoryCache, IHttpClientFactory clientFactory, DBContext DBcontext, IServiceScopeFactory scopeFactory)
{
_Configuration = configuration;
_cache = memoryCache;
_clientFactory = clientFactory;
_scopeFactory = scopeFactory;
_DBcontext = _scopeFactory.CreateScope().ServiceProvider.GetRequiredService<DBcontext>();
}
public Task StartAsync(CancellationToken cancellationToken)
{
_timer = new Timer(getOrg, null, 0, 1000);
return Task.CompletedTask;
}
public Task …Run Code Online (Sandbox Code Playgroud)