在启动之外访问ConfigurationDbContext

时间:2017-06-19 12:51:03

标签: identityserver4

在Startup.cs中配置后,我们如何在启动类之外访问ConfigurationDbContext的同一个实例? 我想用ConfigurationDbContext创建一个存储库,并希望使用在启动时配置的ConfigurationDbContext的相同实例。

1 个答案:

答案 0 :(得分:2)

正如您在IdentityServer4.EntityFramework source code中看到的那样,ConfigurationDbContext在内置DI中注册为Scoped(实际上意味着“每个网络请求”)。此外,它还注册为IConfigurationDbContext接口的实现。

要访问ConfigurationDbContext实例,只需通过DI将其注入您的服务:

public MyService(IConfigurationDbContext context)
{
}

public HomeController(ConfigurationDbContext context)
{
}