2017-04-06 4 views
1

コントローラごとに複数のAutofacコンテナを使用する必要があります。たとえば、依存性リゾルバとしてcontainer1を使用する2つのWebApiコントローラと、依存性リゾルバとしてcontainer2を使用する3つのWebApiコントローラがあります。私はOwin WebApi2を使用しています。それをしてもいいですか?複数のAutofacコンテナをOwin WebApi2に展開する方法

答えて

1

複数のコンテナを別のコンテナに登録することで問題を解決しました。したがって、適切なコントローラーで適切なコンテナを使用するには、次のように必要な依存関係を手動で解決する必要があります。

class SomeController : ApiController 
{ 
    private ISomeDep _dep; 

    public SomeController(IComponentContext container) 
    { 
     // Resolve some dep. from the first container. 
     _dep = container.Resolve<IFirstContainer>().Resolve<ISomeDep>(); 
    } 
} 
関連する問題