2017-06-19 5 views
1

Startup.csで設定したスタートアップクラスの外で、ConfigurationDbContextの同じインスタンスにどのようにアクセスできますか? ConfigurationDbContextを使用してリポジトリを作成し、起動時にコンフィグレーションされたConfigurationDbContextと同じインスタンスを使用したいとします。スタートアップ外のConfigurationDbContextにアクセスする

答えて

2

あなたはIdentityServer4.EntityFrameworksource codeで見ることができたとして、ConfigurationDbContextは(実際には「ウェブあたりの要求」を意味する)Scopedとして内蔵のDIに登録されています。また、IConfigurationDbContextの実装として登録されています。

ちょうどDIを経由して、あなたのサービスでそれを注入し、ConfigurationDbContextインスタンスへのアクセスを取得するには、次の

public MyService(IConfigurationDbContext context) 
{ 
} 

public HomeController(ConfigurationDbContext context) 
{ 
} 
関連する問題