在启动外访问 ConfigurationDbContext
Access ConfigurationDbContext outside startup
在 Startup.cs 中配置后,如何在启动 class 之外访问 ConfigurationDbContext 的同一个实例?
我想用 ConfigurationDbContext 创建一个存储库,并想使用与启动时配置相同的 ConfigurationDbContext 实例。
正如您在 IdentityServer4.EntityFramework
source code 中看到的,ConfigurationDbContext
在内置 DI 中注册为 Scoped
(实际上意味着 "per web request")。此外,它还注册为 IConfigurationDbContext
接口的实现。
要访问 ConfigurationDbContext
实例,只需通过 DI 将其注入您的服务:
public MyService(IConfigurationDbContext context)
{
}
public HomeController(ConfigurationDbContext context)
{
}
在 Startup.cs 中配置后,如何在启动 class 之外访问 ConfigurationDbContext 的同一个实例? 我想用 ConfigurationDbContext 创建一个存储库,并想使用与启动时配置相同的 ConfigurationDbContext 实例。
正如您在 IdentityServer4.EntityFramework
source code 中看到的,ConfigurationDbContext
在内置 DI 中注册为 Scoped
(实际上意味着 "per web request")。此外,它还注册为 IConfigurationDbContext
接口的实现。
要访问 ConfigurationDbContext
实例,只需通过 DI 将其注入您的服务:
public MyService(IConfigurationDbContext context)
{
}
public HomeController(ConfigurationDbContext context)
{
}